はじめに 2017年に書いた記事の内容が2系ベースであり,かついい加減情報を更新したほうがいいなと思い,編集に着手した結果,subprocess.run()をはじめとする大幅な追記が必要となりそうになったため,本記事を新規に作成した. 目標として,以前からのsubprocess関数の説明もしつつ(サポートは終了していない),subprocess.run()やsubprocess.Popen()による同義な記述を行う.さらには,これらを用いたより多様な記述を取り上げる. お急ぎの方はcmd記述の共通ルールと,run()以降を読めば全く問題ない. そもそも何をするモジュールなんですか,という話は公式か,この記事などを参照するとよい. 結論は何かと言われれば,今後はできる範囲ではすべてsubprocess.run()に任せよう.それより複雑な処理が求められる場合は,subprocess.run(