Онлайн-рабочие станции OnWorks Linux и Windows

Логотип

Бесплатный хостинг в Интернете для рабочих станций

<Предыдущая | Содержание: | Следующая>

Меню

Обычный тип интерактивности называется управляемый меню. В программах, управляемых с помощью меню, пользователю предоставляется список вариантов, и его просят выбрать один из них. Например, мы можем представить себе программу, которая представляет следующее:



Пожалуйста выберите:


1. Отображение системной информации

2. Отображение дискового пространства

3. Отображение использования домашнего пространства

0. Выйти


Введите выбор [0-3]>

Пожалуйста выберите:


1. Отображение системной информации

2. Отображение дискового пространства

3. Отображение использования домашнего пространства

0. Выйти


Введите выбор [0-3]>


Используя то, что мы узнали из написания нашего sys_info_page program, мы можем создать программу, управляемую меню, для выполнения задач из приведенного выше меню:



#! / Bin / Баш

# read-menu: очистка программы системной информации на основе меню

эхо "

Пожалуйста выберите:


1. Отображение системной информации

2. Отображение дискового пространства

3. Отображение использования домашнего пространства

0. Выйти »

read -p "Ввести выделение [0-3]>"

#! / Bin / Баш

# read-menu: очистка программы системной информации на основе меню

эхо "

Пожалуйста выберите:


1. Отображение системной информации

2. Отображение дискового пространства

3. Отображение использования домашнего пространства

0. Выйти »

read -p "Ввести выделение [0-3]>"


если [[$ REPLY = ~ ^ [0-3] $]]; тогда если [[$ REPLY == 0]]; тогда

echo «Программа завершена». выход

fi

если [[$ REPLY == 1]]; затем введите время работы "Hostname: $ HOSTNAME"

выход

fi

если [[$ REPLY == 2]]; затем df -h

выход

fi

если [[$ REPLY == 3]]; тогда

если [[$ (id -u) -eq 0]]; тогда

echo "Использование домашнего пространства (все пользователи)" du -sh / home / *

еще

echo "Использование домашнего пространства ($ USER)" du -sh $ HOME

Fi выход

фи еще

echo "Неверная запись." > & 2 выход 1

fi

если [[$ REPLY = ~ ^ [0-3] $]]; тогда если [[$ REPLY == 0]]; тогда

echo «Программа завершена». выход

fi

если [[$ REPLY == 1]]; затем введите время работы "Hostname: $ HOSTNAME"

выход

fi

если [[$ REPLY == 2]]; затем df -h

выход

fi

если [[$ REPLY == 3]]; тогда

если [[$ (id -u) -eq 0]]; тогда

echo "Использование домашнего пространства (все пользователи)" du -sh / home / *

еще

echo "Использование домашнего пространства ($ USER)" du -sh $ HOME

Fi выход

фи еще

echo "Неверная запись." > & 2 выход 1

fi


Этот сценарий логически разделен на две части. Первая часть отображает меню и вводит ответ пользователя. Вторая часть идентифицирует ответ и выполняет выбранное действие. Обратите внимание на использование выход в этом скрипте. Здесь он используется для предотвращения выполнения сценарием ненужного кода после выполнения действия. Наличие нескольких точек выхода в программе, как правило, является плохой идеей (это затрудняет понимание логики программы), но в этом сценарии это работает.


Лучшие облачные вычисления для ОС в OnWorks: