スクリプトがあります。
export TERM=xterm
watch -t -d -n 1 'netstat -veeantpo | grep 43597
SSHを介してこのスクリプトを実行すると、モニターの解像度は決まりません。したがって、結果を表示するスペースがあっても行が折り返されます。写真から結果を見ることができます。 (末尾のスペースを削除しましたESTABLISHED
)。
答え1
-t
デフォルトでは、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