Как написать пользовательский код ошибки в скрипте оболочки

Как написать пользовательский код ошибки в скрипте оболочки

04.02.2020 04:16:14 Просмотров 2 Источник

Я пишу сценарий Кассандры Шелл. Я хочу добавить ниже коды ошибок в сценарии, чтобы я мог использовать эти коды ошибок в различных сценариях.

65  Unrecoverable - Script Terminated
66  Recoverable - Manual Intervention needed
67  Warning
У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106221000_60058272
Мы говорим о кодах выхода скриптов?
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106239899_60058272
да...но определенные пользователем коды ошибок
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106240823_60058272
Вы можете использовать любой код от 0 до 255. Смысл этих кодов зависит от вас (поскольку вы являетесь автором сценария)
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106241860_60058272
Как я буду определять смысл в сценарии, как я уже упоминал выше сценарий, мог бы у plz уточнить.
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106242118_60058272
предположим, я выполняю команду service dse start if[$? eq 0] затем echo "успешно установлен" else exit 65. Затем он должен выйти из скрипта и распечатать неустранимый-скрипт завершен
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106242140_60058272
где что касается выхода 67. она должна выходить не из скрипта а выводить предупреждение msg
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106242185_60058272
Я в замешательстве, что вы хотите, код выхода или распечатать сообщение? Оба варианта возможны, но должна быть оболочка для перехвата кода выхода и печати пользовательского сообщения.
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106242548_60058272
да, я хочу и то и другое. код ошибки с настроенным сообщением
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script#comment106242571_60058272
Как я могу сделать это в shell script

Ответы - Как написать пользовательский код ошибки в скрипте оболочки / How to write User defined error code in shell script

Является ответом!
Romeo Ninov

05.02.2020 11:30:41

Вы можете сделать что-то вроде:

service dse start 
if [ $? -eq 0 ] 
  then echo "successfully installed" 
  else echo "Unrecoverable-Script Terminated" ; exit 65
fi

Это просто пример того, как распечатать сообщение и затем использовать пользовательский код выхода.

https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script/60071759#comment106244352_60071759
Спасибо!! и для предупреждения, что я могу сделать так, что скрипт не должен завершаться и продолжать следующие команды в скрипте. Потому что если дадут выход 66 то есть ненулевое число то он закончится.
https://stackoverflow.com/questions/60058272/how-to-write-user-defined-error-code-in-shell-script/60071759#comment106244431_60071759
@Pushpa, вы не можете иметь одновременно код выхода (что означает выход из скрипта) и продолжить выполнение. Конечно, вы можете печатать только сообщения об ошибках и собирать коды выхода, но в конце вы можете иметь только один код выхода.
Закрыть X