我的以下代码有问题:

callBash.py:

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

sleep.sh:
sleep 10

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

最佳答案

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

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

10-02 02:35
查看更多