python中的子进程:“找不到”

时间:2013-10-25 13:39:28

标签: python subprocess

我的python脚本中有一行代码如下:

subprocess.call(["./home/ubuntu/newproject/keygen.sh",username, password
], shell = True)

(当然这些变量有内容) 而keygen看起来像这样:

#!/bin/bash

echo keygenerierung $1 $2 >> /tmp/logfile
touch /home/ubuntu/newproject/static/$1

当我手动尝试打开路径./home/ubuntu/newproject/keygen.sh时,它可以工作。奇怪的 !当我尝试执行python脚本时,它说:./ home /ubuntu / newproject / keygen.sh:not found

1 个答案:

答案 0 :(得分:4)

由于您的文件名以.开头,因此它是相对路径,并取决于您当前的工作目录。当您“手动打开路径”(无论这意味着什么)时,您要么位于不同的工作目录中,要么实际上指定了以/开头的相关绝对路径。

我想你实际上是想在那里使用绝对路径。摆脱最初的.