
我面临的问题可能有一个简单的解决scheme,但由于我不是一个PHP专家,我无法find它。 我通常这样做,我必须从PHP调用一个shell命令:
cmd = "convert file.pdf image.jpg"; shell_exec($cmd);
但是现在我有一个在shell上运行的命令,我不能从PHP运行它,所以我认为可能有一种方法来声明相同的命令,但是在PHP语言中,
命令:
for i in $(seq --format=%3.f 0 $nf); do echo doing OCR on page $i; tesseract '$imgdir/$imgdir-$i.ppm' '$imgdir-$i' -l eng; done
我的PHP尝试:
sched_yIEld在这种情况下做什么?
为node.Js安装NPM时出错
为什么这个简单的linux C程序加载.so在运行时崩溃?
如何在AWS S3存储桶中查找重复文件?
DelayedJob错误:已经有一个或多个正在运行的程序实例
<?PHP $imgdir = "1987_3"; $nf = count(new GlobIterator('filesup/'.$imgdir.'/*')); $cmd = "for i in $(seq --format=%3.f 0 $nf); do echo doing OCR on page $i; tesseract '$imgdir/$imgdir-$i.ppm' '$imgdir-$i' -l eng; done" shell_exec($cmd); ?>
我得到的是:
PHP Notice: Undefined variable: i in count.PHP on line 7
build议非常欢迎…谢谢
UPDATE
我已经从我被标记为可能重复的问题中读取了这个问题,而我从中明白的是,我的“我”必须有一个参考,对于一个shell命令来说,它有,但是它不起作用执行从PHP。
对此我也试过这个不成功的:
<?PHP $imgdir = "1987_3"; $nf = count(new GlobIterator('filesup/'.$imgdir.'/*')); $cmd ="seq --format=%3.f 0 $nf"; $i = shell_exec($cmd); $cmd = "tesseract 'filesup/$imgdir/$imgdir-$i.jpg' 'filesup/$imgdir/$imgdir-$i' -l eng; done"; shell_exec($cmd); ?>
从文件名提取版本号
我如何知道linux进程正在等待什么?
Gattool非交互式模式 – char-write
在Ubuntu-16.04上从源代码安装gcc-4.8.1
截取路由器上的udp数据包
PHP将使用双引号来评估字符串中的所有变量,例如:
<?PHP $i=5; echo "Your i is: $i"; ?>
输出 : Your i is: 5
如果你想避免这种行为,使用一个简单的报价:
<?PHP $i=5; echo 'Your i is: $i'; ?>
输出 : Your i is: $i
像这样更新你的代码:
<?PHP $imgdir = "1987_3"; $nf = count(new GlobIterator('filesup/'.$imgdir.'/*')); $cmd = 'for i in $(seq --format=%3.f 0 $nf); do echo doing OCR on page $i; tesseract '' . $imgdir/$imgdir . '-$i.ppm' '' . $imgdir . '-$i' -l eng; done'; shell_exec($cmd); ?>
总结以上是内存溢出为你收集整理的将一个linux shell脚本命令转换成php全部内容,希望文章能够帮你解决将一个linux shell脚本命令转换成php所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)