
Как подавить вывод systemctl?
я пытался
systemctl --quiet
systemctl -q
и даже
systemctl 2>&1 1>/dev/null
похоже, ни один из них не работает, если тестирование службы отключено, когда указанная служба уже отключена?
systemctl -q is-disabled dhcpcd
решение1
systemctl
не поддерживает is-disabled
опцию, вы, вероятно, имели в виду is-enabled
. Чтобы использовать его и перенаправить stdout и stderr в /dev/null:
systemctl is-enabled dhcpcd >/dev/null 2>&1
решение2
is-disabled
не является systemctl
ключевым словом.
Это ближе к тому, что, как мне кажется, вы хотите:
systemctl status service &>/dev/null || echo "is-disabled"
Я использую оператор ветвления shell OR. Эта строка будет напечатана is-disabled
, если предыдущая команда вернет статус ошибки, что systemctl сделает в случае, если служба отключена. Если вы хотите проверить, включена ли служба, вы можете использовать &&
вместо ||
. echo
Это всего лишь пример следующей команды.