
Como suprimir a saída do systemctl?
eu tentei
systemctl --quiet
systemctl -q
e até mesmo
systemctl 2>&1 1>/dev/null
nada disso parece funcionar quando o teste do serviço está desabilitado quando o serviço já está desabilitado?
systemctl -q is-disabled dhcpcd
Responder1
systemctl
não suporta is-disabled
opção, você provavelmente quis dizer is-enabled
. Para usá-lo e redirecionar stdout e stderr para /dev/null:
systemctl is-enabled dhcpcd >/dev/null 2>&1
Responder2
is-disabled
não é uma systemctl
palavra-chave.
Isso está mais próximo do que acho que você deseja:
systemctl status service &>/dev/null || echo "is-disabled"
Estou usando o operador de ramificação shell OR. Essa linha será impressa is-disabled
se o comando anterior retornar um status de erro que o systemctl fará caso o serviço esteja desabilitado. Se você quiser testar se o serviço está habilitado, você pode usar &&
em vez de ||
. Este echo
é apenas um exemplo de um comando a seguir.