ssh user@localhost -q -p test 2> /dev/null
redirecionará stderr
para / dev / null.
Estou na metade escrevendo um roteiro de nagios e me irrito com o SSH.
De acordo com a página man:
-q Quiet mode. Causes all warning and diagnostic messages to be
suppressed.
No entanto, se eu ativar o sinalizador silencioso e, em seguida, transmitir uma porta inválida, ainda recebo um erro:
$ ssh user@localhost -q -p test
Bad port 'test'
Isso é um problema, porque isso fará com que a primeira linha seja enviada para fora e isso é o que é capturado pelo Nagios. Eu preciso produzir algo como "Aviso | Erro SSH" depois de pegar em um código de saída != 0
de ssh, mas a primeira linha em que eu posso produzir será a linha 2.
Como posso tornar o SSH realmente silencioso?
Observação: eu não tinha certeza se deveria postar essa pergunta no serverfault, no superusuário ou no stackoverflow. Eu fui com serverfault como a base de usuários é provavelmente mais experiente com soluções cli SSH e scripts de cli.
Ou, o método mais fácil de armazenar LogLevel QUIET
no arquivo de configuração:
$ cat ~/.ssh/config
Host *
IdentityFile ~/.ssh/id_rsa
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
LogLevel QUIET
...
Termina obtendo o mesmo resultado acima com muito menos digitação.
Felicidades