2009-06-23 17 views
2

私はsshを使用していくつかのマシンでいくつかのコマンドを実行したいと思います。私はそれがコマンド "ssh user @ hostname command"を使って実行できることを知っています。しかし、私が実行したいコマンドは、コンソール上でいくつかの文字列を表示します。すべての文字列をコンソールに戻す方法はありますか?sshを使用してリモートマシン上でコマンドを実行

答えて

4

screen -S test 
ssh [email protected] command1 
ssh [email protected] command2 

あなたは、スクリーンから(Ctrlキーを押しながらD)を取り外すことができ、それが再取り付け(スクリーン、その後、実行されますそれはしかし長い間実行してみましょう - rテスト)を画面に表示し、すべての出力を確認します。ただし、これは、コマンドから何トンも出力されないことを前提としています。 Here's a link to a tutorial on screen

+0

最初にリモートホストに接続し、そこでスクリーンセッションを開始したいのではない///コマンドを実行していませんか? – MSpreij

+0

私はそうは思わない。私はこの質問を理解しているので、すべての出力を1つのコンソールに入れたいので、スクリーンを起動してからコマンドを実行するのがその理由です。 –

+0

1台のコンソールにたくさんの出力があるとどうなりますか?バッファーの大きさはどれくらいですか? –

0

あなたにメールを送り返してみませんか? または、ログファイルを使用して現在のコンピュータにscpしますか? そうでなければ、私は知らない!あなたはscreenでコマンドを実行する可能性が

+0

リモートで実行したいプログラムは数日かかることがあります。ライブの進捗状況を監視できるようにしたいだけです。 –

1

これはおそらくGnu Screenを使用します。あなたは "仮想"端末でプロセスを開始し、端末を "切り離し"、あなたが望む時間だけログアウトすることができます。その後、sshで端末を再接続して、コンソール出力を見ることができます。

5
ssh [email protected] command 

それだけです。 'command'が何かを出力すると、sshを実行した端末に表示されます。 ssh user @ hostname ls -l

しかし、他の人が言っているように、GNUスクリーンはこのタイプの作業にとって非常に貴重です。

1

はまた、例えばnohupを見て、持っている:

ssh [email protected] nohup script_that_outputs_strings.py > the_strings.txt

あなたが戻って進行状況を監視する場合次に、あなたが戻ってあなたの背中とtailファイルまたはscp出力チェックすることができますローカルマシン。

関連する問題