[英]Run linux command in python 3
在linux bash中運行以下命令成功:
gimp --no-interface -b '(python-fu-scale RUN-NONINTERACTIVE 0 0 "img.jpg")' -b '(gimp-quit 0)'
輸出:
batch command executed successfully
打印並退出子進程
使用python3.5運行它失敗:
import subprocess
subprocess.run("gimp --no-interface -b '(python-fu-scale RUN-NONINTERACTIVE 0 0 \"img.jpg\")' -b '(gimp-quit 0)'".split())
結果輸出:
batch command executed successfully
batch command executed successfully
並且子進程卡住了。
我不確定有什么區別以及如何在python中實現等效行為。 有沒有一種方法可以將bash命令作為字符串運行?
使用以下資源- 在Python中調用外部命令有助於找到答案
import subprocess
import shlex
subprocess.run(shlex.split("gimp --no-interface -b '(python-fu-scale RUN-NONINTERACTIVE 0 0 \"img.jpg\")' -b '(gimp-quit 0)'"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.