実行後もコードを続行できますか?または、スクリプトが完了するまでその行で停止しますか?Pythonコードの中で、どうすれば.shスクリプトを実行できますか?
3
A
答えて
9
subprocess.callを使用するのが最も簡単です。実行されたプログラムが終了するまで戻りません。異なる動作が必要な場合はsubprocess moduleの他の方法を見てください。
4
import os
os.system('./script.sh')
Pythonスクリプトは、SHが
0
を終了するまで、あなたはos.system
またはsubprocess.Popen
またはsubprocess.call
を使用することができます停止しますが、サブプロセスのメソッドを使用している場合ではないだろうあなたがshell=True
を使用してください。これらすべての方法でシステムコール経由で実行すると、ブロックされます。 pythonスクリプトは完了し、次のステップに進みます。
+3
シェル= Trueを使用する必要はありません。シバンラインを持つシェルスクリプト(またはスクリプトを引数としてシェルを呼び出すことさえ)はexec()で正常に実行できますスタイルの関数。 – ThiefMaster
関連する問題
- 1. AuthorizeExecuteWithPrivilegesでshスクリプトを実行
- 2. PHPで.shスクリプトを実行
- 3. Pythonスクリプトから.shファイルを実行していますか?
- 4. Windows上のEclipseで.shスクリプトを実行するにはどうすればよいですか?
- 5. 実行中のスクリプトから失われたPythonコードを回復しますか?
- 6. Python:どうすればPython関数を並列に実行できますか?
- 7. bash shファイルの中でpythonスクリプトを実行するようにcronジョブを設定する
- 8. どうすればPythonコードを配布できますか?
- 9. Rails - shスクリプトでdelayed_jobを実行
- 10. 実行可能なコマンドタスクでshスクリプトを実行する方法
- 11. どうすればPythonでスクリプトの終了ステータスを取得できますか?
- 12. Python 2環境でPython 3スクリプトを実行できますか?
- 13. 実行中のPythonスクリプトを終了できません
- 14. 実行中のPythonスクリプトWindows上でWindowsで書かれた
- 15. Python:Celery、どうすればバックグラウンドで実行できますか?
- 16. Pythonで実行中のコード行
- 17. WindowsでPythonスクリプト(Tkinter)を実行中
- 18. どうすればmavenテストケースを実行できますか
- 19. どうすればrails server daemonを実行できますか?
- 20. 最初のエラーでpowershellスクリプトの実行を中断するにはどうすればよいですか?
- 21. ターミナルから.shまたは.batファイルを実行するにはどうすればよいですか?
- 22. ./shファイルを実行できません
- 23. SHスクリプトから3つのphpコマンドを実行します。
- 24. LibreOfficeの中でPythonコードを実行
- 25. main.pyスクリプトからサブディレクトリにshを実行しますか?
- 26. Pythonコンテキストマネージャはどのようにしてコードを実行できますか?
- 27. if-else文の中でPHPからpythonスクリプトを実行できません
- 28. 実行中のPerlセッション内でPerlスクリプトをコンパイルするにはどうすればよいですか?
- 29. Jenkinsfileの関数で複数のshコマンドを実行するにはどうすればよいですか?
- 30. どのようにしてPythonはbashスクリプトを実行可能でなく実行できるのですか?
"サブプロセスモジュールは、新しいプロセスを生成して結果を取得するためのより強力な機能を提供します。このモジュールを使用する方がこの機能を使用する方が適しています。たとえば、subprocess.call()を使用すると、実行するシェルが実行されないため、動的に生成された引数をプログラムに渡す場合、引数の注入を考慮する必要はありません。 – ThiefMaster
Subprocess.Popenを提案することもできます。これにより、実行を制御し、終了したり、終了させることができます。しかし、実際には、os.systemが必要とするすべての機能が提供されることがあります。 –
subprocess.callも簡単で簡単なAPIを提供します; – ThiefMaster