URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 133
[ Назад ]

Исходное сообщение
"RE: как узнать из шелл что команда выполнилась успешно?"

Отправлено Biglion , 27-Авг-01 23:29 
Вот допустим в ДОС когда запускаеш прогу она выдает после своего завершения результат ERORLEVEL чтоли!А вспомнил "код завершения" типа
0- все нормально
1- не найден файл
2-неизвестная ошибка
....
и т.д. потом в bat файле можно все обработать
Чтото подобное в юникс есть?  
Понятно что вместо бат будет шелл, а как с кодом завершения?
Я хочу проверять пингом связь и если нет, то менять роутинг.
Если не трудно продублируйте ответ на мыло , плиз!

Содержание

Сообщения в этом обсуждении
"RE: как узнать из шелл что команда выполнилась успешно?"
Отправлено XMan , 28-Авг-01 19:04 
В bash можно  использовать "$?" - это код завершения последней выполненной программы/команды.

"RE: как узнать из шелл что команда выполнилась успешно?"
Отправлено roma , 29-Авг-01 15:49 
когда я писал похожий скрипт, я просто использовал код завершения ping, и все работало.

"RE: как узнать из шелл что команда выполнилась успешно?"
Отправлено Biglion , 31-Авг-01 00:16 
т.е использовал "$?" ?

"RE: как узнать из шелл что команда выполнилась успешно?"
Отправлено XMan , 31-Авг-01 18:48 
>т.е использовал "$?" ?

Переменная шела, типа bash. Хранит код возврата последней выполненной команды. Можешь попробовать сделать:
$ <команда>; echo $?;

PS. Вообще bash намного мощнее command.com в плане написания скриптов. У него в командной строке можно даже простенькие формулы считать :))