0

次のようにPythonスクリプト内からgrepを実行しています:

last_run_start = os.system("cat %(file)s | grep '[0-24]:[0-59]' | tail -n1" % locals())

の最後のタイムスタンプを引き出しfileます。Python コマンド ラインからこれを実行するか、通常の端末からその grep コマンドを使用すると、タイムスタンプを含む最後の行が表示されます。

ただし、このスクリプトから実行すると、次のようにlast_run_start返されます。

18:23:45

0

新しい行は言うまでもなく、この「0」が表示される原因は何ですか? さらに重要なことは、どうすれば削除できlast_run_startますか?

4

1 に答える 1

5

os.system実行したコマンドの終了コードを返します。この場合は 0 のようです。

コマンドの出力は、モジュールから、またはモジュールから使用する必要がある場合は、に直接送信され、stdout保存されません。last_run_startPopencheck_outputsubprocess

0どこかで印刷しているので、印刷されてしまうと思いますlast_run_start

于 2013-05-14T22:48:37.633 に答える