Операционная система UNIX


Использование команды read



9.2.4.1. Использование команды read

Общий формат команды read: read variable<CR>

Значение, присвоенное командой read переменной variable, будет заменять $variable где бы она не встречалась в программе пользователя. Если программа выполняет команду echo до команды read, то она сможет отобразить только: Type in ...

Команда read будет ждать до тех пор, пока вы не введете строку символов и нажмете клавишу <CR>, тем самым присваивая строку переменной.

Следующий пример покажет вам, как написать простую shell программу num.please, содержащую телефонные номера. Эта программа использует следующие команды:
echo - выдает подсказку для ввода фамилий клиентов;
read - присваивает вводимое значение переменной;
grep - просматривает файл list в поисках этой переменной.

Программа будет выглядеть следующим образом:

Пример. $ cat num.please<CR> echo Type in the list name: read name grep $name home/list $

Создайте файл list, содержащий несколько фамилий и номеров телефонов. И теперь запустите файл num.please.

В следующем примере приводится текст программы mknum, которая создает список. В программе mknum используется следующая последовательность команд:
echo - выдает подсказку для ввода имени клиента;
read - присваивает имя клиента переменной name;
echo - выдает подсказку для ввода номера телефона;
read - присваивает номер телефона переменной num;
echo - добавляет значение переменных name и num в файл list;

Если вы хотите, чтобы вывод команды echo добавлялся в конец списка, то вы должны использовать >>. Если вы будете использовать >, то список будет состоять из последего номера телефона, который вы добавили.

С помощью команды cat отобразите содержание программы mknum:

Пример. $ cat mknum<CR> echo Type in name read name echo Type in number read num echo $name $num >> list $ chmod u+x mknum<CR> $



Содержание раздела