Пример 9-13. Подстановка параметров и сообщения об ошибках
Пример 9-13. Подстановка параметров и сообщения об ошибках
#!/bin/bash
# Проверка отдельных переменных окружения.
# Если переменная, к примеру $USER, не установлена,
#+ то выводится сообщение об ошибке.
: ${HOSTNAME?} ${USER?} ${HOME?} ${MAIL?}
echo
echo "Имя машины: $HOSTNAME."
echo "Ваше имя: $USER."
echo "Ваш домашний каталог: $HOME."
echo "Ваш почтовый ящик: $MAIL."
echo
echo "Если перед Вами появилось это сообщение,"
echo "то это значит, что все критические переменные окружения установлены."
echo
echo
# ------------------------------------------------------
# Конструкция ${variablename?} так же выполняет проверку
#+ наличия переменной в сценарии.
ThisVariable=Value-of-ThisVariable
# Обратите внимание, в строковые переменные могут быть записаны
#+ символы, которые запрещено использовать в именах переменных.
: ${ThisVariable?}
echo "Value of ThisVariable is $ThisVariable".
echo
echo
: ${ZZXy23AB?"Переменная ZZXy23AB не инициализирована."}
# Если ZZXy23AB не инициализирована,
#+ то сценарий завершается с сообщением об ошибке.
# Текст сообщения об ошибке можно задать свой.
# : ${ZZXy23AB?"Переменная ZZXy23AB не инициализирована."}
# То же самое: dummy_variable=${ZZXy23AB?}
# dummy_variable=${ZZXy23AB?"Переменная ZXy23AB не инициализирована."}
#
# echo ${ZZXy23AB?} >/dev/null
echo "Это сообщение не будет напечатано, поскольку сценарий завершится раньше."
HERE=0
exit $HERE # Сценарий завершит работу не здесь.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
4.3.2. Стиль сообщения об ошибках
4.3.2. Стиль сообщения об ошибках Для использования в сообщениях об ошибках С предоставляет несколько специальных макросов. Наиболее широкоупотребительными являются __FILE__ и __LINE__, которые разворачиваются в имя исходного файла и номер текущей строки в этом файле. В С они
(8.6) В системном логе постояно появляются сообщения об ошибках. Как с этим бороться?
(8.6) В системном логе постояно появляются сообщения об ошибках. Как с этим бороться? Ошибки эти могут быть самые разнообразные, и причины их появления далеко не всегда очевидны. Иногда их причиной может являтся то, что не запущены какие либо системные службы, к которым
5.7.3 Подстановка параметров и переменных
5.7.3 Подстановка параметров и переменных Символ $ используется для обозначения операций подстановки параметров, подстановки команд и подстановок арифметических выражений. Выражение или имя, следующее за $, может быть заключено в скобки; что не обязательно, но удобно, так
7.2 Сообщения об ошибках ICMP
7.2 Сообщения об ошибках ICMP Бывают ситуации, приводящие к отбрасыванию (удалению из сети) датаграммы IP. Например, точка назначения может стать недоступной из-за обрыва связи. Или может завершиться время жизни датаграммы. Маршрутизатор не сможет переслать длинную
9.4.4 Пример сообщения UDP
9.4.4 Пример сообщения UDP Рис. 9.5 содержит совмещенный вывод IP и UDP частей запроса и соответствующих им ответов. Этот результат получен в мониторе локальной сети Sniffer компании Network General. Запрос содержал требование вывода статуса информации и был послан хостом на сетевую
16.13.2 Пример сообщения MIME
16.13.2 Пример сообщения MIME Показанное ниже сообщение MIME имеет несколько частей: одну текстовую часть и два подключенных текстовых файла. Первый заголовок Content-TypeContent-Type: MULTIPART/MIXED;BOUNDARY = "plum.yale.edu:814898609:772210698:709846916:1916796928"указывает, что сообщение состоит из нескольких частей.
16.18.1 Пример сообщения X.400
16.18.1 Пример сообщения X.400 В отличие от стандартов Интернета X.400 не требует 7-битного кода ASCII и взаимодействия по NVT. Поля сообщения форматируются в соответствии со спецификацией BER от ISO (см. главу 20), что предполагает для каждого поля шестнадцатеричный идентифицирующий код
8.5. Условная подстановка параметров
8.5. Условная подстановка параметров Условная подстановка позволяет проверить, установлен ли определенный параметр, или использовать вместо его значения другое. Значение самого параметра при этом не изменяется. Допустимые виды условных подстановок перечислены в
Используйте однозначные сообщения об ошибках
Используйте однозначные сообщения об ошибках Более половины ваших посетителей не понимают, что написано в сообщениях об ошибках, которые пишут программисты. В итоге пользователи, у которых не получается отправить форму с первого раза, покидают ваш интернет-магазин.Еще
Сообщения об ошибках gsec
Сообщения об ошибках gsec В табл. 34.2 представлены сообщения об ошибках gsec.Таблица 34.2. Сообщения об ошибках gsec Сообщение Причины и рекомендуемые действия Add record error (Ошибка добавления записи) Неверный синтаксис или вы пытаетесь добавить пользователя, который уже
Сообщения об ошибках gfix
Сообщения об ошибках gfix В табл. 39.2 представлены исключения, которые могут появиться в командах gfix вместе с советами, как скорректировать ваши команды.Таблица 39.2. Сообщения об ошибках gfix Сообщение об ошибке Причины и рекомендуемые действия Database file name <string> already given (Имя
9.3. Подстановка параметров
9.3. Подстановка параметров Работа с переменными и/или подстановка их значений${parameter}То же самое, что и $parameter, т.е. значение переменной parameter. В отдельных случаях, при возникновении неоднозначности интерпретации, корректно будет работать только такая форма записи:
Пример 9-14. Подстановка параметров и сообщение о "порядке использования"
Пример 9-14. Подстановка параметров и сообщение о "порядке использования" #!/bin/bash# usage-message.sh: ${1?"Порядок использования: $0 ARGUMENT"}# Сценарий завершит свою работу здесь, если входные аргументы отсутствуют,#+ со следующим сообщением.# usage-message.sh: 1: Порядок использования: usage-message.sh
Текстовые сообщения об ошибках
Текстовые сообщения об ошибках У каждого компьютера есть базовая система ввода/ вывода (BIOS, Basic Input/Output System). Одной из функций BIOS является функция самодиагностики при включении компьютера – POST (Power On Self Test).POST – это программа самотестирования компьютера. Запускается сразу