Общий синтаксис скрипта
Синтаксис вызова команды из командного интерпретатора в самом общем случае обычно выглядит следующим образом:
<command> <flags> <arguments>
> ls -l /home/user1
Признаком флага является знак "-" перед флагом.
Командный интерпретатор позволяет группировать команды.
cmd1; cmd2 - последовательное выполнение команд .
cmd1 & - выполнение в фоновом режиме (демон).
cmd1 && cmd2 - выполнение cmd2 в случае успешного завершения cmd1.
cmd1 || cmd2 - выполнение cmd2 в случае ненормального завершения cmd1.
Для группировки команд можно также использовать скобки "{}".
cmd1 && cmd2; cmd3 - cmd2 будет выполнена только при условии успешного завершения cmd1, и не зависимо от этого будет далее выполнена cmd3.
cmd1 && {cmd2; cmd3}
Обе команды cmd2 и cmd3 будут последовательно выполнены только в случае успешного завершения cmd1.
Скрипт представляет собой самый обычный текстовый файл. Командный интерпретатор последовательно считывает строки этого файла и последовательно их исполняет. Для того чтобы можно было запустить скрипт на исполнение необходимо иметь права на чтение (командный интерпретатор читает строки файла) и на исполнение (запуск команд и утилит) этого скрипта.
Комментарием в shell является строка, начинающаяся со знака "#".
# ЭТО КОММЕНТАРИЙ
Комментарий не обязательно должен занимать всю строку, например:
cat /var/run/inetd.pid # вывести на консоль PID интернет-супердемона
Поскольку в системе может находится не один командный интерпретатор, то путь к интерпретатору указывается в первой строке скрипта следующим образом:
#!/bin/sh