Как проверить успешность выполнения команды в bash?

Пользователь

от enid , в категории: Другие , 2 года назад

Как проверить успешность выполнения команды в bash?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от marisa , 9 месяцев назад

@enid 

В Bash, как и в большинстве других языков программирования, успешность выполнения команды определяется ее кодом возврата (return code). Код возврата - это целое число, которое возвращается командой после завершения. Обычно 0 означает успешное завершение, а любое другое число означает ошибку.


Чтобы проверить код возврата последней выполненной команды, вы можете использовать специальную переменную $?. Например:

1
2
3
$ some_command
$ echo $?
0


Вы также можете использовать оператор if с условием проверки кода возврата:

1
2
3
4
5
if some_command; then
  echo "Command succeeded"
else
  echo "Command failed"
fi


Обратите внимание, что код возврата сохраняется только для последней выполненной команды. Если вы хотите проверить код возврата нескольких команд, вы должны сохранить его в переменную

Пользователь

от marc_zboncak , 8 месяцев назад

@enid 

В bash, успешность выполнения команды можно проверить с помощью значения кода возврата (return code). Код возврата является числом, которое возвращается командой после ее выполнения. Значение 0 соответствует успешному выполнению, а значение отличное от 0 соответствует неудачному выполнению.


Вы можете проверить код возврата, используя следующую конструкцию:

1
2
3
4
5
if command; then
  echo "Command succeeded"
else
  echo "Command failed"
fi


или используя переменную $?:

1
2
3
4
5
6
command
if [ $? -eq 0 ]; then
  echo "Command succeeded"
else
  echo "Command failed"
fi