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

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-13 11:35:59
asal
1265 orang telah melayarinya

为什么用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 />
Salin selepas log masuk

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

同时,我又把转码的部分写到一个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 />
Salin selepas log masuk

通过exec调用
<br /> exec("sudo ./bash turnCode $save_path1:$file_path1", $out, $status);<br />
Salin selepas log masuk

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

shell
Label berkaitan:
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan