Читаем Linux: Полное руководство полностью

retval=$?


choice=`cat $tempfile`

case $retval in

0)

 echo "Вы выбрали '$choice'";;

1)

 echo "Нажата Cancel";;

255)

 echo "Нажата ESC";;

esac

Рис. 25.4. Независимые переключатели

Выбранные пользователем значения помещаются во временный файл, который вам нужно будет обработать. Сейчас мы просто выведем его на консоль. Элемент списка checklist может находиться в одном из положений — On или Off. Эти значения не чувствительны к регистру. Во временный файл выводятся только включенные переключатели.

Работа с виджитом radiolist осуществляется так же, как и в виджитом checklist, за исключением того, что может быть активным лишь один элемент и во временный файл будет записан именно этот элемент.

Листинг 25.6. Зависимые переключатели

#!/bin/sh

DIALOG=${DIALOG=dialog}

tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$

trap 'rm -f $tempfile" 0 1 2 5 15


$DIALOG --backtitle "Пример" \

 --title "RADIOLIST BOX" --clear \

 --radiolist "Это список зависимых переключателей \n\

 Он позволяет выбрать только один вариант из списка \n\

 Какую из этих книг вы читали последней?" 2 0 81 5 \

  "Почти как люди" "Саймак" off \

  "Фауст" "Гете" off \

  "Мастер и Маргарита" "Булгаков" ON \

  "Мир теней" "Саймак" off \

  "Демон" "Лермонтов" on 2> $tempfile


retval=$?


choice=`cat $tempfile`

case $retval in

0)

 echo "Вы выбрали '$choice'";;

1)

 echo "Нажата Cancel";;

255)

 echo "Нажата ESC";;

esac

25.6. Организация меню

Виджит MenuBox очень похож на radiolist — они прямо-таки братья-близнецы, только у menubox нет слева переключателя включено/выключено. Использовать MenuBox нужно так же, как и radiolist, но не указывая on или off для элементов меню.

Листинг 25.7. Меню

#!/bin/sh

DIALOG=${DIALOG=dialog}

tempfile=`tempfile 2>/dev/null` ||( tempfile=/tmp/test$$

trap "rm -f $tempfile" 0 1 2 5 15


$DIALOG --clear --title "MENU BOX" \

 --menu "Этот виджит поможет вам организовать небольшое меню \n\

 MENU BOX предоставляет пользователю выбрать один вариант\

 из списка \n\

 Данный виджит также позволяет прокручивать возможные варианты \n\

 Вы можете использовать стрелки ВВЕРХ/ВНИЗ, а также клавиши \n\

 1-9 для выбора.\n\

 Выберите вашу ОС:" 2 0 71 4 \

  "Linux" "А что, разве есть другие операционные системы" \

  "FreeBSD" "Это лучшая ОС" \

  "Windows" "Мы кроме Windows ничего не видели..." \

  "MSDOS" "На моей двойке ничего другого не запускается :(" 2> $tempfile


retval=$?


choice=`cat $tempfile`

case $retval in

0)

 echo "Ваш выбор '$choice'";;

1)

 echo "Нажата Cancel";;

255)

 echo "Нажата Esc.";;

esac

Рис. 25.5. Виджит menubox

25.7. Календарь

Этот виджит позволяет пользователю удобно ввести дату. Работать с ним нужно так: с помощью клавиши Tab выбираете нужный элемент управления: кнопка OK, Cancel, поле изменения месяца, поле изменения года, поле выбора числа; с помощью стрелок вверх/вниз указываете нужное значения месяца, года, числа и нажимаете <Ввод>. Выбранная вами дата будет отображена на консоли.

Листинг 25.8. Календарь

#!/bin/sh

: ${DIALOG=dialog}


USERDATE=`$DIALOG --stdout --title "CALENDAR" —calendar\

"Выберите дату..." \

0 0 1 1 2004`


case $? in

0)

 echo "Вы выбрали дату: $USERDATE.";;

1)

 echo "Нажата Cancel.";;

255)

 echo "Диалог закрыт";;

esac

Перейти на страницу:

Все книги серии Полное руководство

Похожие книги

Полное руководство по Microsoft Windows XP
Полное руководство по Microsoft Windows XP

В книге известного американского автора описывается среда ОС Windows XP и принципы ее функционирования, приведен сравнительный анализ Windows XP с предшествующими версиями операционной системы Windows. Рассматриваются вопросы применения и модификации нового интерфейса с целью получения прямого доступа ко всем функциям Windows XP обсуждаются варианты подключения к компьютерным сетям. Несколько разделов посвящены работе с реестром и конфигурационными файлами, мультимедийным функциям и разнообразным системным службам, а также методам решения проблем с программным обеспечением и оборудованием. Особое внимание уделено обеспечению безопасности операционной системы.Издание адресовано пользователям и сетевым администраторам, желающим активно применять возможности операционной системы Windows XP (в том числе и недокументированные).

Питер Нортон , Джон Поль Мюллер

ОС и Сети, интернет / ОС и Сети / Книги по IT
Linux
Linux

Книга посвящена операционной системе Linux. Приводятся подробные сведения о ее особенностях и возможностях, идеологии файловой системы, инсталляции и основных командах, вопросах компиляции ядра, настройках и сервисах. Большое внимание уделяется организации на базе Linux различных серверов и служб: электронной почты, WWW, FTP, INN, Proxy, NTP, а также проблемам администрирования сети, обеспечения безопасной работы и другим вопросам. Описаны способы настройки под Linux рабочих станций, в т. ч. и бездисковых, установки и эксплуатации на них графических сред типа X Window, а также конфигурирование модемных соединений, принтеров и сканеров, отладка взаимодействия с Linux-машинами такой «экзотической» периферии, как карманные компьютеры, мобильные телефоны, TV-тюнеры и т. п. Рассматриваемые в книге конфигурационные файлы и структура каталогов соответствуют дистрибутиву Red Hat Linux 7.x, тем не менее, при минимальной адаптации все упоминаемые в книге пакеты устанавливаются в любом дистрибутиве Linux.Для начинающих администраторов или пользователей Linux.

Алексей Александрович Стахнов

ОС и Сети, интернет