为什么用exec执行一个命令时,在脚本内执行不成功,放到服务器命令行就可以了,小弟我在/etc/sudoers也做了配置

WBOY
Release: 2016-06-13 12:37:05
Original
1126 people have browsed it

为什么用exec执行一个命令时,在脚本内执行不成功,放到服务器命令行就可以了,我在/etc/sudoers也做了配置
   我首先在/etc/sudoers做了如下配置

   接着重启了下apache服务器
   在tp框架内写到

<br />
exec('/usr/bin/unoconv --server localhost --port 8100 -o /usr/local/webserver/www/server/Exam/Public/Uploads/Resource/transform/document/201309/52419a788a553.pdf -f pdf /usr/local/webserver/www/server/Exam/Public/Uploads/Resource/untransform/document/201309/52419a788a553.doc');<br />
Copy after login

运行了下,没有效果,转码不成功,把代码直接拿出来就可以执行。

同时,我又把转码的部分写到一个shell脚本里
<br />
#!/bin/sh<br />
<br />
<br />
turnCode() {<br />
local pdf=`echo $1 | cut -d: -f1`;<br />
local file=`echo $1 | cut -d: -f2`;<br />
echo $pdf;<br />
echo $file;<br />
  `/usr/bin/unoconv --server localhost --port 8100 -o $pdf -f pdf $file`<br />
<br />
}<br />
<br />
<br />
<br />
action="$1"<br />
setting="$2"<br />
case $action in<br />
<br />
    turnCode)<br />
        turnCode "$setting"<br />
    ;;<br />
<br />
    *)<br />
    ;;<br />
<br />
esac<br />
<br />
Copy after login

通过exec调用
<br />
 exec("sudo ./bash turnCode $save_path1:$file_path1", $out, $status);<br />
Copy after login

结果仍旧是无法转码,哪位过来人烦请指点下,不甚感激!!!

shell
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!