私はPythonが初めてで、グーグルを試しましたが、助けはありません..
パイプでそのようなコマンドを呼び出す必要があります(最も古い保留中のメールを取得します mailq ):
mailq |grep "^[A-F0-9]" |sort -k5n -k6n |head -n 1
コマンドはシェルで機能します。
Python では、次のように記述しました。
p = subprocess.Popen( 'mailq |grep \"^[A-F0-9]\" |sort -k5n -k6n |head -n 1', shell=True,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT)
response = p.communicate()[0]
しかし、私はそのような出力を得ます:
並べ替え: 書き込みに失敗しました: 標準出力: 壊れたパイプ\n並べ替え: 書き込みエラー\n
このようなエラーの原因は何ですか?