Это просто соглашение для кодов выхода, которое работает практически для всех современных операционных систем для EXIT_SUCCESS
Если мы хотим сделать параллельный пример в Web, код возврата 404 означает страницу не найдено.
Также в этом случае выбор 404 - это просто соглашение.
В BASH, по сути, любой код выхода, который не равен 0, является своего рода ошибкой.
Вот полный список BASH зарезервированных кодов выхода:
http://tldp.org/LDP/abs/html/exitcodes.html#EXITCODESREF
" Почему конкретно 0?", вы можете спросить.
В C и C ++ программах главная функция имеет тип int и поэтому должна возвращать целочисленное значение. Возвращаемое значение главной функции считается «Выходным состоянием» приложения.
В большинстве операционных систем возвращение 0 - это статус успеха, очень краткий способ сообщить, что «Программа работала нормально».
В C ++ необязательно набирать «return 0;» в конце основной функции, потому что компилятор включает ее автоматически.
Специфик c logi c, реализованный в самой программе, объявляет, было ли выполнение программы нормальным или нет.
Например, я могу реализовать программу, которая позаботится об удалении файлов, и, если во время удаления файла возникнет ошибка, я верну -1, в противном случае в конце процесса удаления, в случае отсутствия ошибок / исключений, я вернусь 0.
Вы можете повеселиться и go проверить исходный код команд Linux, чтобы узнать больше.
Вот, например, ls .
Редактировать после комментария
Правая сторона && будет оцениваться только в том случае, если состояние выхода на левой стороне равно нулю (т. Е. Истинно).
С другой стороны, || противоположен, он будет оценивать правую сторону только в том случае, если состояние выхода левой стороны отличное от нуля (т. Е. Ложное). Поведение
BASH с 0 относится только к этому виду операторов.
Другими словами:
$ false && echo working
$ true && echo working
working
$ true || echo working
$ false || echo working
working