从 python 脚本运行 .sh 文件

我正在尝试.sh从 python 脚本运行文件。但是,该.sh文件中包含一个需要输入的函数。因此,如果我.sh要从终端运行文件,它将如下所示:

./test.sh 1 2

我可以看到,在 python 中,subprocess.call(['./test.sh'])它不起作用,因为没有争论的余地。我可以使用任何其他子流程分支吗?


富国沪深
浏览 458回答 3
3回答

森林海

参数是列表中的附加元素。subprocess.run(['./test.sh', '1', '2'])您还应该使用subprocess.run()而不是subprocess.call(),这是一种过时的方法。

慕码人2483693

你可以这样做。看看这里的文档:Python2: https ://docs.python.org/2/library/subprocess.htmlPython3.8: https ://docs.python.org/3.8/library/subprocess.html例子:subprocess.call(["ls", "-l"])

holdtom

您也可以使用以下功能:try:    ressys = subprocess.check_call('script.sh',  shell=True)except subprocess.CalledProcessError, e:    res = str(e.output) + " -- Code: " + str(e.returncode)    print res
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python