Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中的exec不工作_Php_Ubuntu_Lamp - Fatal编程技术网

PHP中的exec不工作

PHP中的exec不工作,php,ubuntu,lamp,Php,Ubuntu,Lamp,我想在ubuntu终端上执行一个命令。当我在终端中直接运行命令时,它运行没有任何问题。但我实际上想做的是通过PHP执行这个命令 chdir('/home/thilini/FYP/testone/bin/'); exec('./mindtct input_folder/filename output_folder/filename'); 上面显示了我编写的php代码。我正在使用ubuntu 10.10和LAMP配置。chdir工作正常,我已经成功地从/var/www/to/home/t

我想在ubuntu终端上执行一个命令。当我在终端中直接运行命令时,它运行没有任何问题。但我实际上想做的是通过PHP执行这个命令

chdir('/home/thilini/FYP/testone/bin/');    
exec('./mindtct input_folder/filename output_folder/filename'); 
上面显示了我编写的php代码。我正在使用ubuntu 10.10和LAMP配置。chdir工作正常,我已经成功地从/var/www/to/home/thilini/FYP/testone/bin/(在这里我有可执行的mindtct)。但exec不起作用。(mindtct是一个可执行文件,它将输入文件夹中的文件转换为另一种格式,并以给定名称存储在输出文件夹中)。 我做错了什么

你可能想要

exec('./mindtct input_folder/filename output_folder/filename');

也许您应该在脚本中设置错误报告(-1),这样您会出现一些错误

如果您在PHP5.4以下运行,请在ini文件中选中“安全模式”


问题是路径中的问题。缺少正斜杠。

要使用
shell\u exec()
,而不是
exec()

shell\u exec()
在终端中执行命令,而
exec()
打开应用程序

$results = shell_exec('./mindtct input_folder/filename output_folder/filename');
print_r($results);
这将执行命令,将其存储在结果中,然后以数组格式打印结果



对不起,我实际上使用了引号。更新检查
/mindtct
是否标记为可执行文件(
ls-l/home/thilini/FYP/testone/bin/mindtct
)。它标记为可执行文件。mindtct上的所有用户都有读、写、执行权限。我应该在哪里设置错误报告,因为我没有编写任何脚本?在php文件的顶部,您可以在其中执行。很久以前,我使用PHP,但这应该可以用于设置错误报告。您是否也测试过填写mindtctSafe模式的绝对路径已关闭。所有用户都有读取、写入和执行权限。这可能不是最好的注释,但是,由于二进制权限对所有人都是可执行的,并且您没有收到任何错误,您是否确保二进制的参数有效并且具有有效权限?