我有一个脚本:
export TERM=xterm
watch -t -d -n 1 'netstat -veeantpo | grep 43597
当我们通过 ssh 运行此脚本时,它不会确定显示器分辨率。因此,尽管有空间显示结果,但行已换行。你可以在图片中看到结果。(我已经删除了后面的尾随空格ESTABLISHED
)。
答案1
添加-t
到你的 ssh.默认情况下,当您向 ssh 传递命令时,它不会在远程主机上分配 TTY,因此应用程序只有一个基本的 STDOUT 管道可供使用。
ssh -t foobar 'watch -t -d -n 1 "netstat -veeantpo | grep 43597"'
答案2
您的终端信息未传递到远程端。您可以调整 SSH 客户端和服务器配置来传递变量,或者采用简单的方法将它们放入命令字符串中:
"TERM=$TERM COLUMNS=$COLUMNS LINES=$LINES watch -n 1 top -bn 1