Однако многие пользователи сценариев Bash хотят вернуться с разными кодами возврата при выходе, но получают ошибки. В этом руководстве мы объясним различные подходы к возврату сценария Bash с разными кодами возврата при выходе.
Сценарий Bash возвращает с разными кодами возврата при выходе
Прежде чем перейти к методам, давайте взглянем на коды выхода, которые имеют определенные значения:
Коды выхода | Описание |
0 | Скрипт выполняется успешно. |
1 | Скрипт выполняется с общими ошибками. |
два | Недопустимое использование некоторых встроенных команд в скрипте. |
126 | Показывает ошибку для команды, которая вызывается и не может быть выполнена. |
127 | Команды в скрипте нет. |
128 | Показывает код выхода за пределы допустимого диапазона или сигнал фатальной ошибки. |
130 | CTRL+C завершает работу скрипта. |
255 | Общий код ошибки сбоя сценария. |
Как получить коды возврата при выходе?
Вам нужно только написать «echo $?» команда для получения кода возврата. Например, вы хотите сравнить два числа, используя следующий скрипт Bash:
Выполнив скрипт в терминале, запустите «echo $?» чтобы получить код возврата при выходе:
. / сравнение.sh
эхо $?
«comparison.sh» выполнен успешно. Вот почему терминалы показывают ноль в качестве кода возврата. Точно так же вы получите ненулевое значение при успешном выполнении скрипта. Например, если вы используете Ls вместо команды ls в сценарии, вы можете получить ненулевое значение в качестве кода возврата:
Как вы можете видеть на предыдущем изображении, терминал показывает 127 в качестве кода возврата, потому что скрипт содержит неправильную команду:
Сделать возврат сценария Bash с разными кодами выхода
Вы можете вручную настроить коды выхода в скрипте. Например, если вы хотите получить 255 в качестве кода выхода, используйте следующий скрипт:
Теперь выполните скрипт, а затем запустите «echo $?» команда, чтобы получить 255 в качестве кода возврата:
. / сравнение.shэхо $?
Вывод
Это все о кодах выхода, которые вы можете получить после выполнения скрипта Bash в Linux. Коды выхода помогают пользователю определить статус сценария Bash. Вы также можете вручную настроить и использовать различные коды возврата. Следовательно, вы можете получить ненулевой код выхода вместо нуля, даже если скрипт выполнен успешно. Если вы хотите узнать больше о скриптах Bash, посетите наш официальный сайт.