我的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
答案 0 :(得分:4)
由于您的文件名以.
开头,因此它是相对路径,并取决于您当前的工作目录。当您“手动打开路径”(无论这意味着什么)时,您要么位于不同的工作目录中,要么实际上指定了以/
开头的相关绝对路径。
我想你实际上是想在那里使用绝对路径。摆脱最初的.
。