Executar comandos no computador remoto

1

Eu corro um comando do meu computador:

ssh user@server-name "df -hP | egrep '(/home|/cors)'"

o problema é que eu recebo mais 3 linhas:

tput: No value for $TERM and no -T specified
tput: No value for $TERM and no -T specified
/etc/bash.bashrc.local: line 9: HISTSIZE: readonly variable

O que devo fazer para não obter as 3 linhas?

Br, Wolfy

    
por Wolfy 11.02.2011 / 15:55

2 respostas

2

Você diz que também obtém essas linhas, por isso suponho que você obtenha a saída desejada, junto com essas mensagens stderr. Você poderia apenas redirecionar as partes stderr para /dev/null assim:

ssh user@server-name "df -hP | egrep '(/home|/cors)' 2>/dev/null"

ou

ssh user@server-name "df -hP 2>/dev/null | egrep '(/home|/cors)'"

Dependendo do que está causando o erro.

    
por Oli 11.02.2011 / 16:05
2

Eu acho que você tem algum comando tput no seu perfil bash ou bashrc, etc, na máquina que você tem ssh'd para. Verifique os arquivos .bashrc .bash_profile em sua casa (na máquina remota) ou arquivos no / etc como o que foi mencionado em sua pergunta também. É difícil dizer o que pode causar isso, já que você pode modificar esses arquivos e isso pode causar o problema?

Também depende se é um problema que você quer eliminar, ou se você quer que ele não seja notado: então pode ser OK redirecionar stderr para / dev / null por exemplo (editado: como outra resposta é sobre isso, tanto quanto eu posso ver agora).

    
por LGB 11.02.2011 / 16:08