ホームページ >バックエンド開発 >Python チュートリアル >Pythonでシェルコマンドを実行する3つの方法を詳しく解説
最近、ページ上でシェルコマンドを実行する必要があります。
最初のコマンドは os.system です。
コードは次のとおりです:
os.system('cat /proc/cpuinfo')
しかし、ページに出力されるコマンドの実行結果が 0 であることがわかりました。または 1 ですが、これはもちろん要求を満たしません。
2 番目の解決策 os.popen() を試してください
コードは次のとおりです:
output = os.popen('cat /proc/cpuinfo') print output.read()
os.popen() によって返されるオブジェクトは、ファイル読み取りオブジェクトです。実行の出力は、それを読み取ることで確認できます。 read() オペレーション。ただし、プログラム実行の戻り値は読み取れません)
3番目の解決策commands.getstatusoutput()を試してください。戻り値と出力を1つのメソッドで取得でき、非常に使いやすいです。
コードは次のとおりです:
(status, output) = commands.getstatusoutput('cat /proc/cpuinfo') print status, output
Pythonドキュメントに示されている例、
コードは次のとおりです:
>>> import commands >>> commands.getstatusoutput('ls /bin/ls') (0, '/bin/ls') >>> commands.getstatusoutput('cat /bin/junk') (256, 'cat: /bin/junk: No such file or directory') >>> commands.getstatusoutput('/bin/junk') (256, 'sh: /bin/junk: not found') >>> commands.getoutput('ls /bin/ls') '/bin/ls' >>> commands.getstatus('/bin/ls') '-rwxr-xr-x 1 root 13352 Oct 14 1994 /bin/ls'
以上がPythonでシェルコマンドを実行する3つの方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。