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
网站链接:http://bzwzjz.com/article/dododge.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 重庆企业网站建设 高端品牌网站建设 成都商城网站制作 外贸营销网站建设 成都网站建设 成都网站建设 盐亭网站设计 营销网站建设 LED网站设计方案 成都网站制作 成都网站建设 企业网站建设公司 成都网站建设公司 网站制作 高端网站建设 专业网站建设 成都网站建设 网站设计 重庆网站建设 网站建设公司 企业网站制作 成都网站建设