2017-01-04 5 views
0

トップを使用して特定のプロセスのCPU使用量をsshでダンプしたい場合は、完全なコマンドラインを表示します。 私は、サーバーへのSSH、ローカルコマンドを実行すると、私は以下を参照してください。sshを介したコマンドの出力が異なります

remote-server$ top -c -b -n 1 |grep redis-server 
5137 redis-user 20 0 83.5g 23g 884 S 13.7 29.3 13388:28 ./bin/redis-server *:11000 

をしかし、私はSSH経由で同じコマンドを実行したときに、私は以下を参照してください。

local-desktop$ ssh news-cache1 "top -c -b -n 1 |grep redis-server" 
5137 redis-user 20 0 83.5g 23g 884 S 13.7 29.4 13388:55 ./bin/redis-server 

私は理由を理解していません私はsshを介してコマンドを実行すると、完全なコマンドライン(ホストとポートの引数*:11000)は得られません。

誰でも私が間違っていることを教えてもらえますか?リモートサーバーはCentOSの6

答えて

0

再実行のsshで-tオプションを持つコマンドがある一方で

私のローカルデスクトップはOS X、エルキャピタンです。

local-desktop$ ssh -t news-cache1 "top -c -b -n 1 |grep redis-server" 

sshクライアントは、リモートでコマンドを実行すると、制限された幅のtty端末を割り当てます。割り当てられた端末の幅は、あなたが興味を持っている完全な行を表示するのに十分ではありませんでした。-tを追加すると、疑似端末割り当てが強制されます。実際http://man.openbsd.org/ssh

-t Force pseudo-terminal allocation. This can be used to execute arbitrary screen-based programs on a remote machine, which can be very useful, e.g. when implementing menu services. Multiple -t options force tty allocation, even if ssh has no local tty. 
+0

から「リモートコマンドを実行すると、SSHクライアントは、限られた幅のTTY端子を割り当て、」あなたは、リモートコマンドを実行すると、デフォルトでは、すべてのttyを割り当てません。 – Kenster

+0

ありがとうございました。 sshが起動した後、同じコマンドをpsshで試してみましたが、端末(-X -tt)を割り当てても失敗しました。 'pssh -i -X -tt -H news-cache1' stty columns 200; top -c -b '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' -n 1 | grep redis-server "' – Shital

関連する問題