2016-04-11 9 views
0

別のコマンドの出力に変数を使用するにはどうすればいいですか?例えば、 "openssl"でいくつかのキーを生成しようとすると、国、州、組織などに関する質問が出るでしょう。コマンド出力の変数を設定する

私はこの情報を記入する必要があるスクリプトで変数を使いたいと思います。私は変数 "国"を持っています。変数 "State"などを含み、実行時にopensslコマンドからこの質問に解析/設定されます。

私はこれをbashで試していますが、同じことがどのようになるかを知りたいと思っています。

種類について

答えて

0

あなたには複数の方法があります。 1.あなたのスクリプトは、Pythonスクリプトの前に立ち上げていると、次のように的環境変数に設定された結果は、あなたのPythonスクリプトから環境変数を読み取ることができた場合:

import os 
os.environ.get('MYVARIABLE', 'Default val') 

は、そうでなければ、他のアプリケーションを起動しようとすることができますあなたのPythonスクリプトからと(os.popen使用して、結果を読んで):

import os 
tmp = os.popen("ls").read() 

以上(あなたは2.6より新しいのpythonを持っている場合)

import subprocess 
proc = subprocess.Popen('ls', stdout=subprocess.PIPE) 
tmp = proc.stdout.read() 
+0

と何バッシュについてまた、他のコマンドはopensslです。私が達成したいのは、opensslがスクリプトの変数openssl – IvanAK

+0

を使って質問している質問を満たすことです。対話シェルを開きたいものです。これを見て:https://pymotw.com/2/subprocess/ – Stefano

+0

とこれ:http://stackoverflow.com/questions/9673730/interacting-with-bash-from-python – Stefano

関連する問題