2017-12-04 13 views
0

Pythonでは、サブプロセスを使用して任意のプロセスを呼び出すことができます。私はどのようにコマンドをバイパスすることができますか?

私は、対話型の端末で、いくつかのコマンドの出力が必要な場所で、Pythonコードを使用しなければならない状況があります。

対話型端末を開くサブプロセスモジュールを使用するにはどうすればよいですか?さらにいくつかのコマンドをバイパスしてさらに解析することができます。第2の1は1つのサブプロセスOBJに渡すことができる

ps -aux | grep python

ps -auxような第1の出力に依存し、そのobjがなることを私は2つの異なるコマンドのサブプロセスモジュールを使用することができる午前

grep pythonが処理される別のサブプロセスコマンドのstdinとして使用....あなたが質問

答えて

0

はあまり明確ではないので、私は

0を理解して一部を答えるでしょう

対話型端末を開くサブプロセスモジュールを使用するにはどうすればよいですか?また、いくつかのコマンドをバイパスしてさらに解析することができます。

iは、Ubuntuマシンを持っており、これは私があなたのrequirmentに応じて、別の端末を起動し、メソッドを、

 from subprocess import Popen,PIPE 
     command='who' 
     command ='"'+command+' '+';read -n1" ' 
     #subitem = Popen(['gnome-terminal','--disable-factory','-x','bash','-c',command],stdin =PIPE) 
      subitem = Popen(['gnome-terminal','--disable-factory','-x','bash'],stdin =PIPE) 
     subitem.communicate(input='your command') 

あなたはさらに、この使用して標準入力、標準出力で再生することができ、それらにコマンドを渡す通信方法です

+0

対話型端末は、あなたがしたように、引数を使って端末にコマンドを渡すことを許可していません。私は端末に入った後でしかコマンドを入力できません。それは実際にはコマンドラインユーティリティ/クライアントの一種です... – Bhuro

+0

編集コードを参照 –

+0

私はそれを試してみましょう..... – Bhuro

関連する問題