2.1.5. Коды завершения программы
2.1.5. Коды завершения программы
Когда программа завершает работу, она уведомляет операционную систему о своем состоянии, посылая ей код завершения, который представляет собой 16-разрядное целое число. По существующему соглашению нулевой код свидетельствует об успешном завершении, а ненулевой указывает на наличие ошибки. Некоторые программы возвращают различные ненулевые коды, обозначая разные ситуации.
В большинстве интерпретаторов команд код завершения последней выполненной программы содержится в специальной переменной $?. В показанном ниже примере программа ls вызывается дважды, и оба раза запрашивается код ее завершения. В первом случае программа завершается корректно и возвращает нулевой код, во втором случае она сталкивается с ошибкой (указанный в командной строке файл не найден), поэтому код завершения оказывается ненулевым:
% ls /
bin coda etc lib misc nfs proc sbin usr
boot dev home lost+found mnt opt root tmp var
% echo $?
0
% ls bogusfile
ls: bogusfile: No such file or directory
% echo $?
1
Программа, написанная на языке С или C++, указывает код завершения в операторе return в функции main(). Есть и другие методы задания кодов завершения. Они обсуждаются в главе 3, "Процессы". Например, программе назначается определенный код, когда она завершается аварийно (вследствие получения сигнала).
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Коды исключений
Коды исключений Для точной идентификации типа возникшего исключения блок исключения или выражение фильтра могут использовать следующую функцию: DWORD GetExceptionCode(VOID) Код исключения должен быть получен сразу же после возникновения исключения. Поэтому функция фильтра не
Обработчики завершения
Обработчики завершения Обработчики завершения служат в основном тем же целям, что и обработчики исключений, но выполняются, когда поток покидает блок в результате нормального выполнения программы, а также когда возникает исключение. С другой стороны, обработчик
Приложение Г Различные исходные коды
Приложение Г Различные исходные коды Г.1. Заголовочный файл unp.h Почти каждая программа в этой книге начинается с подключения заголовочного файла unp.h, показанного в листинге Г.1[1]. Этот файл подключает все стандартные системные заголовочные файлы, необходимые для работы
14.6.8 Коды ответов
14.6.8 Коды ответов Каждой команде в диалоге соответствует ответ, состоящий из кода ответа и сообщения. Например:ftp> get subnets--> PORT 128,36,0,22,10,54200 PORT command successful.--> RETR subnets150 Opening ASCII mode data connection for subnets (3113 bytes).226 Transfer complete.Коды ответов состоят из трех цифр, каждая из которых имеет
16.10 Коды ответов
16.10 Коды ответов Коды ответов SMTP имеют структуру, подобную кодам ответов FTP. Код состоит из трех цифр. Первая цифра указывает статус команды: 1yz Положительный предварительный (Positive Preliminary) ответ (в настоящее время в SMTP не используется) 2yz Положительный дополненный (Positive
17.7.2 Коды состояния NNTP
17.7.2 Коды состояния NNTP В диалоге из раздела 17.5 видно, что каждый ответ сервера NNTP начинается с числового кода состояния. При этом используются одинаковые для серверов SMTP и FTP правила: 1xx Информационное сообщение 2xx Успешная команда 3xx Команда пока была успешна, нужно
19.8.3 Коды состояния
19.8.3 Коды состояния Коды состояния используются подобно электронной почте и пересылке файлов (FTP). Наиболее распространенные значения кодов: 1xx Информация. Не используется, но зарезервирован для применения в будущем. 2xx Успешно. Запрошенная операция была успешно
Коды завершения программ
Коды завершения программ Большинство программ возвращают в операционную систему какое-то число, показывающее, насколько удачно программа завершила свою работу. Например, man-страница grep говорит, что grep вернет 0, если заданный шаблон найден, и 1, если совпадений не найдено.
Приложение 10. Коды ошибок
Приложение 10. Коды ошибок Коды ошибок, возвращаемые клиентам или модулям PSQL сервером Firebird 1.5.0, представлены в табл. П10.1. Некоторые коды недоступны в более ранних версиях Firebird. Важно убедиться, что сервер и клиент имеют корректную версию файла firebird.msg (interbase.msg для Firebird 1.0.x),
Приложение C. Коды завершения, имеющие предопределенный смысл
Приложение C. Коды завершения, имеющие предопределенный смысл Таблица C-1. "Зарезервированные" коды завершения Код завершения Смысл Пример Примечание 1 разнообразные ошибки let "var1 = 1/0" различные ошибки, такие как "деление на ноль" и пр. 2 согласно документации к Bash --
18.1. Коды завершения
18.1. Коды завершения Перед тем как рассмотреть некоторые примеры удачных сценариев, посвятим несколько слов кодам завершения. Каждая выполняемая команда возвращает код завершения. Чтобы просмотреть его, достаточно воспользоваться кодом завершения последней команды:$ echo
Виртуальные коды клавиш
Виртуальные коды
Приложение Д Коды ошибок DOS
Приложение Д Коды ошибок DOS 2 – файл не найден3 – путь доступа не найден5 – доступ отвергнут6 – недопустимая обработка8 – недостаточно памяти10 – недопустимая программная среда11 – неверный формат18 – файлы