16.3. Выполнение сценария

16.3. Выполнение сценария

Ниже рассматривается пример, который уже обсуждался ранее. В данном случае, файл называется cleanup.

$ pg cleanup

#!/bin/sh

#имя: cleanup

#это общий сценарий, выполняющий очистку echo "starting cleanup…wait"

rm /usr/local/apps/log/*.log

tail -40 /var/adm/messages /tmp/messages

rm /var/adm/messages

mv /tmp/messages /var/adm/messages

echo "finished cleanup"

Приведенный выше сценарий отменяет отображение сообщений /var/adm/ путем усечения файла сообщений. В задачи этого сценария также входит удаление всех журнальных файлов в каталоге /usr/local/apps/log.

Для выполнения сценария применим команду chmod:

$ chmod u+x cleanup

Чтобы запустить сценарий на выполнение, введите его название:

$ cleanup

При отображении сообщения об ошибке, например:

$ cleanup

sh: cleanup: command not found

воспользуйтесь командой: $ ./cleanup

Если перед выполнением сценария нужно указать путь доступа к нему или же сценарий сообщает, что не может обнаружить команду, достаточно в значение переменной path из файла .profile добавить каталог bin. При вводе следующей информации сначала убедитесь, что вы находитесь в каталоге $HOME/bin:

$ pwd

$ /home/dave/bin

Если последняя часть команды pwd включает название подкаталога /bin, его следует использовать при указании имени пути. Измените файл .profile и добавьте в файл .profile каталог $HOME/bin:

PATH=$PATH:$HOME/bin

В случае если подкаталог /bin отсутствует, создайте его; сначала удостоверьтесь, что находитесь в начальном каталоге.

$ cd $HOME

$ mkdir bin

После этого добавьте каталог bin в переменную PATH в файле .profile, затем заново инициализируйте файл .profile

$ . .profile

Теперь все должно получиться.

Если же проблемы остались, просмотрите главы 2 и 13. В этих главах содержатся сведения о командах find и xargs, а также о настройках переменных среды, которые окажутся полезными при создании и выполнении сценариев.

Все листинги книги являются полными. Чтобы запустить на выполнение сценарии, введите в файл команды, сохраните его на диске и выйдите из текстового редактора. Затем воспользуйтесь командой chmod для установки права выполнения. Теперь можно переходить к делу.