0
正しい値を返しません:subprocess.call - のgrep -cは、私がfollwoing Unixのfuncitonを実行するためにPythonのsubprocess.callを使用しようとしています
grep -c 'Frame:0' file.txt
私のPythonのコードは次のようになります。
frame0Count=int(unix.call("grep -c 'Frame:0' %s"% fileNameVariable,shell=True))
見つかりませ発生箇所はありません、画面出力は次のようになります。しかし
0
、FRA me0Count varは0ではなく1の値を持ちます。
誰でもこの理由を説明できますか?
ありがとうございました
'subprocess.call'はコマンドのテキスト出力を返しません。コマンドが成功したかどうかを返します。あなたがgrepの出力を望むなら、 'subprocess.check_output'を見てください –
ああ、ありがとう。私は以前にcheck_outputを実際に試しましたが、何も見つからなかったときにエラーが発生しました – user1338194
@ user1338194 '--silent'パラメータを使って行が返されないときにgrepのエラーを抑制できませんか?この方法で@SimonFraserの 'check_output'の使用を提案することができます – jayant