Ich möchte CPU-Nutzung eines bestimmten Prozesses über SSH mit Top-Dump und ich möchte volle Befehlszeile angezeigt werden. Wenn ich an den Server ssh und ausführen Befehl lokal, sehe ich folgendes:Unterschiedliche Ausgabe des Befehls über 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
Aber wenn ich den gleichen Befehl über SSH ausführen, sehe ich folgendes:
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
Ich verstehe nicht, warum Ich bekomme keine vollständige Befehlszeile (mit Host- und Portargumenten *: 11000), wenn ich den Befehl über ssh ausführe.
Kann mir jemand sagen, was ich falsch mache?
Meine lokalen Desktop ist OS X, El Capitan, während Remote-Server CentOS 6.
„SSH-Client weist einen TTY-Terminal mit begrenzten Breite, wenn Sie Befehle remote ausführen“ Eigentlich ist es nicht einen tty überhaupt standardmäßig vergeben, wenn Sie einen Remote-Befehl ausführen. – Kenster
Danke kdeb. Nachdem ssh angefangen hat zu arbeiten, habe ich den gleichen Befehl mit pssh versucht und dann ist es auch nach der Zuweisung des Terminals (-X -tt) gescheitert. Es scheint im Falle von Pssh-Pseudo-Terminal-Breite nicht genug und schließlich war es in der Lage, es durch Einstellen der Terminal-Breite wie folgt arbeiten: 'Pssh -i-X -tt-H News-Cache1" Stty Spalten 200; Top -c -b -n 1 | grep Redis-Server "' – Shital