Введение в Unix


         

Командные файлы (скрипты) в C-Shell


Командный файл (скрипт) - это файл, состоящий из команд, выполняемых группой. Примеры скриптов - файлы .login, .cshrc, .logout. Прежде чем писать свой скрипт, проверьте UNIX Reference используемой Вами версии UNIX, нет ли там команды, уже решающей вашу задачу.

Первый способ выполнения скрипта - ввести команду:

% csh sname arg1 arg2 ...,

где sname - имя скрипта; arg1, arg2, ... - аргументы скрипта.

Аргументы скрипта автоматически помещаются во встроенные переменные $argv[1], $argv[2] и так далее.

Кроме того, аргументы доступны по ссылкам $n, где n - целое, равное позиции аргумента; $0 означает sname. Различие между $argv[n] и $n заключается в том, что первая ссылка дает ошибку при выходе значения n за допустимые пределы, а вторая - нет.

Второй способ выполнения скрипта в C-Shell - обеспечить его выполнимость (командой chmod) и позаботиться о том, чтобы он начинался с символа # (диез); в противном случае скрипт будет выполняться обычным Shell.

Пример:

% chmod a+x sname % sname arg1, arg2, ...

При выполнеии скрипта производится подстановка значений переменных, ссылки на которые указывает знак $. Переменная должна обладать значением в момент ссылки на нее, иначе возникает ошибка.

Узнать, присвоено ли значение переменной, можно с помощью выражения $?<имя> (1 - присвоено, 0 - нет), а количество компонентов значения дает выражение $#<имя>.

На компоненты значения можно ссылаться выражением $<имя>[n], где n - номер компоненты. Компоненты значения разделяются пробелами, а многокомпонентное значение заключается в скобки.

Пример:




Содержание  Назад  Вперед