我希望在 python 脚本的子目录中运行 bash 脚本。该 bash 脚本应该执行其所有操作,就像在当前目录中一样。除了将目录作为参数传递并使用它来引导所有调用之外,还有什么方法可以做到这一点?
基本上,类似于
for i in range(1,100):
subprocess.call(['/some%s/task.sh' % i, arg1])
其中脚本的内容与 some%s 目录内的文件一起使用。
最佳答案
subprocess.call
具有用于此的 cwd
关键字参数:
for i in xrange(1, 100):
subprocess.call(["./task.sh", arg1], cwd=("/some%d" % i))
(仅隐式记录:“完整的函数签名与 Popen
构造函数的签名相同 - 该函数将所有提供的参数直接传递到该接口(interface)。”cwd
列于 Popen
。)
关于python - 在脚本当前目录中从 Python 运行子进程 bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17366695/