こんにちは、私はこの問題があります。 Pythonスクリプトでシェルコマンドを実行していますが、問題は1ではなく2つの結果を得ることです。 1つ目は保存するID、2つ目は結果コードである0です。
これは私のコードです
import os
cmd = "/path/to/ctl so list | tail -1 | awk '{print $1}'"
event_id = os.system(cmd)
print(event_id)
結果は次のとおりです。
225
0
0をどのように削除できますか?
ありがとう
答え1
あなたの推測は正しいです。これは0
シェルコマンドの戻りコードです。os.system(cmd)
コマンドが実行され、結果が出力され、戻りコードが保存されevent_id
印刷されます。
代わりにこのモジュールを使用する必要がありますsubprocess
。
import subprocess
cmd = "/path/to/ctl so list | tail -1 | awk '{print $1}'"
event_id = subprocess.check_output(cmd, shell=True).rstrip()
print(event_id)