Если я запускаю команду "service --status-all", каждая (запущенная?) служба отображается в формате столбца. В первом столбце перед именем службы есть [ ? ], [ + ] или [ - ]. Что представляет этот столбец? Что означают ?, + и -?
Извините, если это простой вопрос. Я искал в интернете около 30 минут, прежде чем просто прийти сюда и спросить.
Я даже нашел это:Что означают символы в service --status-all?где «правильный» ответ гласит: «Он рисует [+] или [-] в зависимости от того, был ли статус выхода нулевым или ненулевым соответственно».
Итак, полагаю, мой новый вопрос: что означает статус ноль и ненулевой (!?!?!)?
решение1
Ну, это просто коды выхода. После того, как что-то завершит работу, оно может вернуть 8-битное целое число (0-255), чтобы указатькакон вышел.
- Ноль (который подразумевается, если ничего не возвращается) означает, что приложение завершило свою работу и завершило ее естественным образом.
- Ненулевые коды (1-255) могут означать все, что захочет приложение. Страница руководства (
man <command>
) обычно покажет вам, что означают эти коды.
Что касается вопроса, не стоит слишком много думать:
+
означает, что он работает,-
означает, что это не так (этомощьрухнул (он мог вообще не запуститься), и?
означает, что у служб нетstatus
команды, поэтому у команд службы нет возможности разобраться, что к чему.