【发布时间】:2014-07-18 12:02:56
【问题描述】:
我想知道是否可以从 python 程序调用 shell 脚本,但 shell 脚本 与 python 文件不在同一目录中? 目前我只是成功调用了一个 shell 脚本,该脚本与调用它的 python 文件位于同一目录中,这要归功于这个命令:
所以基本上,在我必须做的程序中,我无法更改我的 bash 脚本的位置,所以我必须找到一种方法从我的 python 文件中调用这个 bash 脚本(qnd 不一样路径)>
subprocess.call(["./my_shell_script.sh",my_argument])
谢谢,
解决方案:
subprocess.call(["the/path/to/the/script/script.sh"])
乔丹
【问题讨论】:
-
我怀疑这不是真正的重复。但是,我必须承认这一点对我来说不是很清楚。您知道如何在当前工作目录中调用 shell 脚本。鉴于其完整路径,您知道如何称呼它。从您的 cmets 看来,您似乎知道如何更改 PATH。您是否正在寻找“搜索可执行路径”之类的内容?您可能需要编辑您的问题以更广泛地了解您的问题。
-
我按照您的建议进行了修改。正如你所说,如果 shell 脚本与我的 python 文件位于同一工作目录中,我知道如何调用它。但是问题是如果不在同一个目录下怎么调用呢
-
感谢您花时间编辑您的问题。我的 猜测 是您真的希望将脚本 relative 启动到当前工作目录。您能给我们您的 Python 脚本路径和您尝试启动的 Shell 脚本吗?
-
解决方案是“显而易见的”,我编辑了我的帖子!非常感谢您的帮助!