我通过cmd-line运行win2003服务器,PHP 526.
我有一个cmdline字符串:
$cmd = ' "d:\Prog Files\foo.exe" -p "d:\data path\datadir" ';
Run Code Online (Sandbox Code Playgroud)
试图在PHP代码中执行此操作
$out = `$cmd`; # note use of backticks AKA shell_exec
Run Code Online (Sandbox Code Playgroud)
foo.exe导致失败,因为它将-p arg解释为"d:\ data".
但是,$cdm复制到Windows shell cmdline 的相同字符串会成功执行.
如何在PHP中正确处理空格shell_exec?
shell命令是否被视为合法的编程接口?具体来说,从PHP页面或CGI文件在Linux应用程序服务器上执行bash shell命令有什么问题吗?这是否会引入效率或安全问题?
谢谢
我有以下执行完美但不在后台应该执行?它实际上会停止页面加载,直到它完成,这是不好的.
shell_exec("/usr/bin/php /home/public_html/pages/test/backg.php {$user_info} {$user_info2} {$user_info3} &");
Run Code Online (Sandbox Code Playgroud)
我也试过了
exec("/usr/bin/php /home/public_html/pages/test/backg.php {$user_info} {$user_info2} {$user_info3} &");
Run Code Online (Sandbox Code Playgroud)
我以为
&
意味着它会执行然后让持有页面继续吗?
shell_exec并且exec不会返回任何内容.我无法弄清楚出了什么问题.
这是一些代码:
echo 'test: ';
$output = shell_exec('whoami');
var_export($output, TRUE);
echo PHP_EOL . '<br>' . PHP_EOL;
Run Code Online (Sandbox Code Playgroud)
这是输出的来源
test 2:
<br>
Run Code Online (Sandbox Code Playgroud)
我无法控制主机,但我相信他们正在运行SuPHP.根据phpinfo,safe_mode已关闭.whoami从SSH 运行输出预期值.
我不知所措.知道如何调试这个吗?
当我尝试使用PHP脚本执行时shell_exec(),它无法正常工作.
在error_log文件中,它显示:
PHP警告:shell_exec()[function.shell-exec]:无法执行'php/home/snabbsam/public_html/.....
系统
Centos
工作了shell_exec用clamscan
shell_exec()对作品clamscan()的ClamAV的功能.
但它没有执行PHP脚本
我检查过的事情:
safe_mode已关闭shell_exec()disable_functions在php.ini中不存在我正在尝试编写一个脚本来浏览并返回类似于在终端中工作的脚本.
大多数命令工作正常,但cd /path/to/files只是没有做任何事情.
试图用所有可能的参数执行它,例如-d和完整路径等.没有错误.当运行另一个命令时,一切正常,从CMD运行composer时,一切正常.尝试了exec,system,shell_exec等.它可能是什么?
echo system('php composer.phar install');
我正在运行一个简单的wget命令shell_exec()
wget_file.php
<?php
$command = "wget http://mydomain.co/media/bigbigbig.wav";
$output = shell_exec($command);
echo $output;
?>
Run Code Online (Sandbox Code Playgroud)
根据http://www.php.net/shell_exec,我可能期望输出:"执行命令的输出,如果发生错误或命令没有输出,则为NULL."
如果我从命令行运行wget_file.php,我会看到wget结果的显示.但是,如果我从浏览器运行它,则不会给出结果.(但文件确实下载成功)
我计划通过调用via执行wget_file.php cUrl,同时传递url + path.但是shell_exec()在执行完成后获得响应会很好.
有谁知道我是否只是缺少一些东西来获得输出(在浏览器中运行)?
在Perl中,您可以执行以下操作
perl -E'my $date = `date`; say $date'
Run Code Online (Sandbox Code Playgroud)
这是同步运行命令并将变量设置为STDOUT的简便方法。在Node中,如何快速运行命令以捕获标准输出?
shell_exec("touch /Users/Nerses/Downloads/ads.txt 2>&1")
我有PHP exec(shel_exec)函数的问题.它说我没有执行命令的权限.
我该如何打开这些权限?