【发布时间】:2015-02-25 22:23:42
【问题描述】:
我正在尝试从另一个 python 脚本运行位于我服务器上文件夹中的 python 脚本。我尝试运行的脚本的位置与现有脚本不在同一位置。我尝试执行的脚本不是一个函数,我只需要在第一个脚本完成后启动它,而且我知道它们都彼此独立工作。我找到了similar post,但是当我使用os.system 或subprocess.Popen 时,我得到了错误Not Found。
我知道我调用的目录是正确的,因为在前面的语句中我调用了 shutil.move 来将文件移动到我要运行的 scipt 所在的同一目录。
这是我尝试过的:
subprocess.Popen("/home/xxx/xxxx/xxx/xx/test.py")
os.system("/home/xxx/xxxx/xxx/xx/test.py")
subprocess.Popen("/home/xxx/xxxx/xxx/xx/test.py", shell=True)
【问题讨论】:
-
os.chdir() 会让你移动到其他 python 脚本的位置
-
您认为运行 *.py 文件时会发生什么?显然 test.py 的源代码中没有 python 解释器...
-
@NSH 错误 test.py 脚本工作
-
@Dan 获取您所在的当前目录。使用 os.chdir() 更改目录,运行脚本,返回您所在的目录
-
它的顶部有shebang,是的。
标签: python subprocess os.system