2010-12-13 7 views
2

私は次のことを行いtest.py、と呼ばれる、スクリプトを持っている:SSHを介してスクリプト出力を表示しますか?

....プリント "Hello World" の

(このスクリプトは単にプリント:(1)ながら

を「こんにちは世界」を継続)。


ここでは、2台のマシン(マシンAとマシンB)を使用しています。両方のマシンで同じユーザーが使用されます。私は、次の操作を実行したいと思います:

(1)[マシンAでの作業]実行test.pyをプログラム的機A {意味、地元のPythonスクリプトは、test.pyを実行していることだろうに使用os.system(...)}

(2)

は、[マシンの作業(この時点で、スクリプトtest.pyはマシンAの画面に "Hello World" を印刷している)を言いますB]今はsshを使ってマシンAにログインし、 'view '私たちが実行したスクリプトの出力(1)

どうすればよいですか?私は知らない何

私も、マシンAに、マシンBからのSSHする方法を知っているマシンAに test.pyを実行して起動されるスクリプトの書き方を知っていることは次のとおりです。

(*)別のマシン(マシンB)からマシンAへのロギング中に、その出力を簡単に表示できるように、Pythonスクリプトを実行するには、(1)でどのコマンドを使用する必要がありますか?

(*)マシンBからマシンAへのsshに続いて、の出力を示す画面にナビゲートするにはどうすればいいでしょうか?test.py

答えて

4

あり、あなたがこれを行うことができ、いくつかの方法がある...しかし、おそらく最も簡単なFIFOバッファのようになります。

A$ mkfifo /tmp/stuff 
A$ ./test.py &> /tmp/stuff 

次にマシンB上:

B$ ssh A "cat /tmp/stuff" 
hello world 
hello world 
... 

は、通常、私は screenを使用することをお勧めし、しかし、それはあなたが端末の中から走っていることを前提としています(これは難しいでしょう)。私は detachがよりシンプルになると聞いていますので、おそらくそれを試すことができますか?

+0

Davidありがとうございます。私は端末から「スクリーン」が使用されていることを知っています。 Pythonスクリプト内から 'screen'を使うことは可能ですか? – user3262424

+0

それはおそらくトリッキーだろう。 'screen'はすべての種類の端末マジックを使って正しい場所にテキストを書いて画面やものを切り替えることができます。FIFOバッファやファイルへのリダイレクトが十分でない場合は、画面の前にdetachを使用します。 –

+0

あなたの答えをありがとう。 – user3262424

1

非常に速い選択肢は、Pythonプログラムの出力をファイルにパイプし、次にtailを2番目のユーザーと単に使用して、出力がファイルに書き込まれているのを確認することです。しかし、あなたがそこにいるようなプログラムでは、ファイル非常にはすぐに大規模になるでしょう。

+0

ありがとうございます。 – user3262424

関連する問題