13. Используя неименованный буфер поменяйте местами первую и третью строку.
14. Используя команду отмены восстановите исходное состояние текста. Удалите последовательно все строки. Используя буферы стирания, вставьте строки в обратном порядке.
15. Используя именованный буфер A соберите в нем по четыре первых слова из каждой строки. В конце текста добавьте две пустые строки, после чего вставьте содержимое буфера A.
16. Сохраните файл с именем text4.
Цель работы: Освоить базовые принципы создания сценариев; освоить принципы работы с аргументами сценария.
Сценарий — это текстовый файл, содержащий команды оболочки и конструкции специального языка программирования. При исполнении сценария будет использован интерпретатор по умолчанию, но рекомендуется явно указывать оболочку в первой строке сценария командой вида
#!/абсолютный_путь_к_интерпретатору_сценария,
например, #!/bin/bash.
Команды размещаются построчно. Символ # указывает на начало строки комментария в сценарии, который длится до конца строки. Для запуска сценария необходимо иметь права на выполнение файла, их можно установить командой chmod. Если файл сценария доступен только для чтения, то запустить его можно командой
/путь_к_интерпретатору -f сценарий.
Для того, чтобы дать возможность дочерним оболочкам использовать переменные сценария, можно воспользоваться командой
export список_переменных.
При этом любая порожденная оболочка получает копии переменных и может обращаться к ним, используя одни и те же имена.
Вместо переменных в сценариях используется понятие параметра. Тип всех параметров — строковый. Чтобы сослаться на значение параметра, нужно поставить символ $ перед его именем:
Параметры делятся на:
- переменные оболочки (простые переменные);
- позиционные параметры — их имена представляют собой натуральное число, а значениями служат аргументы с соответствующими номерами, начиная с 1, переданные сценарию или самой оболочке при их запуске;
- специальные параметры — их именами служат специальные символы.
Обращение к значениям позиционных параметров: $1-$9. Примеры специальных параметров:
$0 — имя файла сценария (первое слово в командной строке);
$# — количество позиционных переменных, переданных сценарию;
$* — все аргументы командной строки с разделителем между ними (обычно пробел);
$? — код завершения последней выполненной команды (0 — успешно, другое значение — произошла ошибка).
Ввод данных в сценариях осуществляется командой
read переменная1 переменная2…
Если задана единственная переменная, то в нее записывается вся вводимая строка. Если указано несколько переменных, то в первую записывается первое слово, во вторую — второе, в последнюю — остаток строки.
Для вывода данных используется команда
echo [опции] [строка].
Опции команды echo:
-n — не производить перевод курсора на следующую строку;
-e — интерпретация специальных символов в строке:
\a — звуковой сигнал;
\n — новая строка;
\t — символ горизонтальной табуляции;
\c — запрет перехода на новую строку;
\r — возврат каретки;
\nnn — символ с ASCII-кодом nnn в восьмеричном формате.