Книга: Искусство программирования на языке сценариев командной оболочки

Пример 6-1. завершение / код завершения

Пример 6-1. завершение / код завершения

#!/bin/bash

echo hello

echo $? # код возврата = 0, поскольку команда выполнилась успешно.

lskdf # Несуществующая команда.

echo $? # Ненулевой код возврата, поскольку команду выполнить не удалось.

echo

exit 113 # Явное указание кода возврата 113.

# Проверить можно, если набрать в командной строке "echo $?"

# после выполнения этого примера.

# В соответствии с соглашениями, 'exit 0' указывает на успешное завершение,

#+ в то время как ненулевое значение означает ошибку.

Переменная $? особенно полезна, когда необходимо проверить результат исполнения команды (см. Пример 12-27 и Пример 12-13).


Символ !, может выступать как логическое "НЕ" для инверсии кода возврата.

Пример 6-2. Использование символа ! для логической инверсии кода возврата

true # встроенная команда "true".

echo "код возврата команды "true" = $?" # 0

! true

echo "код возврата команды "! true" = $?" # 1

# Обратите внимание: символ "!" от команды необходимо отделять пробелом.

# !true вызовет сообщение об ошибке "command not found"

# Спасибо S.C.


В отдельных случаях коды возврата должны иметь предопределенные значения и не должны задаваться пользователем.

Оглавление книги


Генерация: 0.061. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз