( exec 7>&1; your_command 2>&1 >&7 | grep -v msg_to_suppress >&2 )
Veja também o link .
Esta pergunta já tem uma resposta aqui:
Existe uma mensagem personalizada que vem sempre que eu ssh ou scp eu gostaria de esconder. Eu ainda quero que o resto do stderr vá para a saída stderr.
Por exemplo: a.sh contém uma linha: ssh example.com "touch /tmp/a.log ; echo ok"
myuser@host $ ./a.sh
No valid ciphers for protocol version 2 given, using defaults.
#######
# this is prod
#
#######
ok
myuser@host $
Por isso, quero ocultar as primeiras 5 linhas ou, se as colocar no script grep -v -E "#|No valid ciphers for protocol" . Qualquer outro erro ainda deve ser enviado para screen / stderr.
( exec 7>&1; your_command 2>&1 >&7 | grep -v msg_to_suppress >&2 )
Veja também o link .
A mensagem do banner parece ter sido definida no servidor remoto. Você deve ser capaz de suprimi-lo com -q :
ssh -q example.com ...
A mensagem de criptografia pode ser suprimida usando uma cifra que corresponda a um dos conjuntos oferecidos pelo servidor. Comece com ssh -Q cipher e experimente configurações como ssh -o [email protected] ...
Tags ssh grep stdout stderr shell-script