Eu tenho um roteiro:
export TERM=xterm
watch -t -d -n 1 'netstat -veeantpo | grep 43597
quando executamos este script através do ssh, ele não determina a resolução do monitor. portanto, as linhas são quebradas, embora haja espaço para mostrar os resultados. Você pode ver o resultado na imagem (removi o espaço à direita depois ESTABLISHED
).
Responder1
Adicione -t
ao seu ssh. Por padrão, quando você passa um comando para ssh, ele não aloca um TTY no host remoto, portanto, o aplicativo possui apenas um canal STDOUT básico para trabalhar.
ssh -t foobar 'watch -t -d -n 1 "netstat -veeantpo | grep 43597"'
Responder2
As informações do seu terminal não estão sendo repassadas para o lado remoto. Você pode ajustar a configuração do cliente e do servidor SSH para passar as variáveis ou seguir o caminho mais fácil e colocá-las dentro da string de comando:
"TERM=$TERM COLUMNS=$COLUMNS LINES=$LINES watch -n 1 top -bn 1