PHP接收shell数据 php和shell

php调用shell如何取得返回值

?php

创新互联公司云计算的互联网服务提供商,拥有超过13年的服务器租用、成都移动机房、云服务器、虚拟主机、网站系统开发经验,已先后获得国家工业和信息化部颁发的互联网数据中心业务许可证。专业提供云主机、虚拟主机、空间域名、VPS主机、云服务器、香港云服务器、免备案服务器等。

$output = shell_exec('ls -la');//执行linux命令:ls -la

echo "pre$output/pre";//输出返回值

?

ubuntu12.04 怎么用php调用shell

第一,应该查阅php.ini配置文档(我的配置文档位置是/etc/php5/php.ini),关闭安全模式 safe_mode=Off。

第二,给予php运行的用户和本机用户权限。php运行的用户名可以通过在localhost运行以下的php文件查到:

?php

echo shell_exec("id -a");

?123123

我的Ubuntu系统的php运行用户名是www-data(好蠢的名字…)

控制台下,执行 visudo,可以打开/etc/sudoers文件进行修改(利用visudo命令的意义在于,sudoers文件很重要,如果修改错了,visudo会提示你,而直接修改会导致系统出错,无法使用sudo…)

修改的地方在root的下一行:

‘查到的php运行的用户名’ ALL=(ALL) NOPASSWD:ALL

‘本机用户名’ ALL=(ALL) ALL

通过以上设置,应该就能完成ubuntu系统下php调用并执行shell脚本。

PS.相关的命令(详细请百度google之)

$output = shell_exec("xxx.sh");//只有失败的时候返回NULL

system("cmd string",$status);//$ststus在调用成功时返回true,失败返回false

如何把php中变量传递给shell

system("sh /root/datasys/crm_data/one_day.sh $date");

这样就可以,但是我们要明白一点,数据传给sh是以字符串的形式,结构、指针等复杂类型变量传过去的效果不一定是我们想要的,需要转换为文本,而且sh要明白传来的文件格式。

本文名称:PHP接收shell数据 php和shell
当前地址:https://www.cdcxhl.com/article14/dododge.html

成都网站建设公司_创新互联,为您提供网站维护网站设计公司网站改版网站建设面包屑导航自适应网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设