/ / pythonを使ったsortコマンドの使い方は? [複製] - Python、ソーティング、コマンド、サブプロセス

Pythonを使用してsortコマンドをどのように使うべきですか? [複製] - Python、ソート、コマンド、サブプロセス

私はたくさんの異なるテキストファイルを持っていて、テキストを1つのファイルに分類しようとしています。私はpythonのサブプロセスを使っています、そして私は次のコードを書きました

command_line = "sort -m 1.txt 2.txt > a.txt"
args = shlex.split(command_line)
subprocess.call(args)

その結果、subprocess.call(args)は2を返し、a.txtには何も書き込まれませんでした。私のコードに何か問題がありますか?

回答:

回答№1は0

シェルリダイレクト演算子を使いたい場合 > あなたのコマンドラインでは、渡す必要があります shell=Truesubprocess.call。そうでなければ、 ">"と "a.txt"がコマンドライン引数として渡されます。 sort。と shell=Trueコマンドラインは実際のシェルに渡されて解釈されるので、そうしないでください。 shlex.split それ。使いやすいかもしれません os.system の代わりに subprocess.callこれはデフォルトでシェルを使用します。