|
| ||||||||||||
| ||||||||||||
9. Средства программирования shellВы можете использовать shell для создания программ. Такие программы называются также процедурами shell. В этом разделе рассказывается как создавать и выполнять программы shell с помощью команд, переменных, позиционных параметров, кодов возврата. Прежде чем создавать программы shell необходимо изучить редактор. 9.1. Программы shell9.1.1. Создание простых программ shellНачнем описание создания простых программ shell, которые выполняют задачи:
С помощью редактора создайте файл dl и введите в него строки:
pwd<CR>
ls<CR>
echo This is the end of the shell program.<CR>
Теперь вы имеете программу shell. Вы можете с помощью cat отобразить содержимое файла:
$ cat dl<CR>
pwd
ls
echo This is the end of the shell program.
$
9.1.2. Выполнение программ shellВыполнить shell программу вы можете с помощью команды sh. Введите: sh dl<CR> Когда команда dl выполняется с помощью sh, то вначале печатается имя пути текущего справочника, потом список файлов в текущем справочнике и в конце комментарий: "This is the end of the shell program." С помощью команды chmod вы можете сделать файл исполняемым:
$ chmod u+x dl<CR>
$ ls -l<CR>
total 2
-xw------ 1 login login 3661 Nov 2 10:28 mbox
-xwx----- 1 login login 48 Nov 15 10:50 dl
$
Обратите внимание, что chmod включает разрешение на выполнение (+x) для пользователя (u). Теперь dl является исполняемой программой. Попытайтесь выполнить ее. Введите: dl<CR> 9.1.3. Создание справочника bin для исполняемых файловЧтобы сделать shell программы доступными изо всех ваших справочников, вы можете создать справочник bin в своем регистрационном справочнике и переписать shell программы в этот справочник. С помощью переменной PATH вы можете включить ваш справочник bin: PATH = $PATH:$HOME/bin 9.1.4. Ограничения при именовании программ shellshell программе вы можете дать любое имя, не совпадающее с именами системных команд. Если имя вашей программы совпадает с именем команды системы, то система будет выполнять вашу команду вместо системной. Назад | Содержание | Вперед |
|
CITForum © 1997–2025