簡體   English   中英

如何從python運行內聯shell腳本?

[英]How to run an inline shell script from python?

我的python文件中的字符串中有一個小的Shell腳本。
現在,我想通過subprocess.call()運行此腳本,我想知道什么是最好的方法。

我的第一個想法是將腳本寫入StringIO並通過stdin=...指定,但是很遺憾,您無法指定StringIO因為它沒有fileno()方法。

當然,我可以使用stdin=subprocess.PIPE ,然后使用subprocess.communicate()對其進行寫入,但我想知道是否有更簡單的方法。

import subprocess

script = """
for x in 1 2 3 ; do echo $x ; sleep 1 ; done
"""

subprocess.call(['sh', '-c', script])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM