首頁 > 後端開發 > php教程 > php执行shell脚本问题

php执行shell脚本问题

WBOY
發布: 2016-06-23 13:49:49
原創
1132 人瀏覽過

在ubuntu上搭的xamp环境平台。在使用php的shell_exec执行shell脚本的时候,只能执行部分命令,或者说只能执行echo命令,像cat ,more等等都不能执行,而且无任何返回信息,比如:
echo "a"
cat a.txt
more b.txt
echo "b"
结果为: ab,中间的2条命令没有执行,也无任何反馈信息,这是为何?


回复讨论(解决方案)

本地执行shell脚本的时候能成功,但是使用php来就无法执行了

有人不在不有人不在不
有人不在不

权限问题。
chmod 0777 a.txt 看看

$ ll a.txt
$ ll b.txt
试试

你上面的echo应该不是linux命令的echo应该是php的echo 
$results = `cat a.txt`;或者$results = shell_exec('cat a.txt');  
echo $results试试

问题已经搞定
1.路径问题,确定好工作目录
2.权限问题,daemon和用户之间的关系要搞清楚。
希望能让大家借鉴

   a.sh  
  
#!/bin/sh

echo 'hello world'>1.txt
/usr/bin/unoconv -f pdf /mnt/www/test/test.txt

index.php

exec("/usr/bin/a.sh",$status);


为啥不生成pdf文件。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板