6

Python でサブプロセスを実行したいのですが、サブプロセスにはパスワードを指定するための引数が必要です。デフォルトでは、このマシンにログインできるすべてのユーザーがps、サブプロセスの実行時にユーティリティでパスワードを取得できます。

そして、Popenには__executable__、実際のプログラム名を隠すことができるパラメーターがありますが、サブプロセスのパスワード引数を隠すことはできません。

パスワードを非表示にするにはどうすればよいですか?

PS: Linux で実行しています。

4

2 に答える 2

1

サブプロセスでそれを行うことはできないと思いますが、サブプロセスからそれを行うためのライブラリがあります: http://code.google.com/p/py-setproctitle/

この方法は各 OS に固有です。一部のシステムはそれをまったくサポートしていません。可能であれば、他の手段 (stdin パイプなど) でサブプロセスにパスワードを与えます。

于 2012-07-09T11:57:39.560 に答える
1

subprocessそのための API を公開していません。環境変数を使用してコマンドにパスワードを渡すことをお勧めします。

subprocess.check_call('command --password="$PASSWORD"', shell=True,
                      env=dict(os.environ, PASSWORD=password))
于 2012-07-09T12:21:42.807 に答える