我正在尝试运行一个简单的python脚本(name.py):
#!/usr/bin/env python
name = raw_input('What is your name?\n')
print 'Hi, %s.' % name
使用以下bash脚本(Helloworld.sh):
#!/bin/bash
python name.py
通过以下php
<!DOCTYPE html>
<html>
<body>
<?php
if (isset($_POST['Submit1'])) {
echo shell_exec('sh /home/administrator/Desktop/Helloworld.sh');
}
?>
<form action="myfilename.php" method="post">
<p><Input Type = "Submit" Name ="Submit1" Value = "Save Parameters">
</form>
</p>
</body>
</html>
日志中的错误是:
python:无法打开文件'name.py':[Errno 2]没有这样的文件或目录
bash文件在终端上正常工作。我该怎么办?
答案 0 :(得分:2)
尝试在执行python脚本
之前添加该行cd "$(dirname "$0")"
你的bash文件中的?
答案 1 :(得分:1)
您可以像这样修改shell脚本:
#!/bin/bash
BASEDIR=`dirname "${0}"`
cd "$BASEDIR"
python name.py
始终在包含脚本的目录上运行。或者,如果 name.py 位于另一个目录中,则相应地更改cd
命令。