スクリプトがあります:
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