|
Искусство программирования на языке сценариев командной оболочкиПримечательно, что select по-умолчанию использует в качестве приглашения к вводу (prompt) -- PS3 (#? ), который легко изменить. Пример 10-29. Создание меню с помощью select #!/bin/bash PS3='Выберите ваш любимый овощ: ' # строка приглашения к вводу (prompt) echo select vegetable in "бобы" "морковь" "картофель" "лук" "брюква" do echo echo "Вы предпочитаете $vegetable." echo ";-))" echo break # если 'break' убрать, то получится бесконечный цикл. done exit 0 Если в операторе select список in list не задан, то в качестве списка будет использоваться список аргументов ($@), передаваемый сценарию или функции. Сравните это с поведением оператора цикла for variable [in list] в котором не задан список аргументов. Пример 10-30. Создание меню с помощью select в функции #!/bin/bash PS3='Выберите ваш любимый овощ: ' echo choice_of() { select vegetable # список выбора [in list] отсутствует, поэтому 'select' использует входные аргументы функции. do echo echo "Вы предпочитаете $vegetable." echo ";-))" echo break done } choice_of бобы рис морковь редис томат шпинат # $1 $2 $3 $4 $5 $6 # передача списка выбора в функцию choice_of() exit 0 См. так же Пример 34-3. Глава 11 ...» |
Код для вставки книги в блог HTML
phpBB
текст
|
|