小编典典

从python内部运行bash脚本

python

我的以下代码有问题:

callBash.py:

import subprocess
print "start"
subprocess.call("sleep.sh")
print "end"

sleep.sh:

sleep 10

我希望10秒钟后打印“结束”。(我知道这是一个愚蠢的示例,我可以简单地在python中睡眠,但是这个简单的sleep.sh文件只是作为测试)


阅读 189

收藏
2020-12-20

共1个答案

小编典典

使sleep.sh可执行并添加shell=True到参数列表中(如先前答案中所建议)可以正常工作。根据搜索路径,您可能还需要添加./或其他合适的路径。(即,更改"sleep.sh""./sleep.sh"。)

shell=True如果bash脚本的第一行是shell的路径,则不需要该参数(在Linux等Posix系统下)。例如,#!/bin/bash

2020-12-20