从php执行perl命令
我假设使用php页面中的perl调用替换文本文件中的单词 我试着跟着从php执行perl命令,php,perl,system,Php,Perl,System,我假设使用php页面中的perl调用替换文本文件中的单词 我试着跟着 `perl -pi -e 's/foo/bar/g' /tmp/newxml.xml`; system('perl -pi -e \'s/foo/bar/g\' /tmp/newxml.xml', $retval1); exec('perl -pi -e \'s/foo/bar/g\' /tmp/newxml.xml', $retval1, $retval2); 而且它不起作用 我试着跟着 system('perl -v
`perl -pi -e 's/foo/bar/g' /tmp/newxml.xml`;
system('perl -pi -e \'s/foo/bar/g\' /tmp/newxml.xml', $retval1);
exec('perl -pi -e \'s/foo/bar/g\' /tmp/newxml.xml', $retval1, $retval2);
而且它不起作用
我试着跟着
system('perl -v > /tmp/newxml.xml', $retval1);
而且它可以工作,所以我想这不是许可问题
我直接在shell上执行了这个命令,它工作正常。知道怎么了吗?试试:
system('perl -pi -e ''s/foo/bar/g'' /tmp/newxml.xml', $retval1);
或
你能解释一下什么
不起作用吗
,我试过了,一切正常。所有命令都无法替换指定文件中的单词。我未来的调查显示http或apache用户不是sudoer,因此无法执行给定的命令。
system("perl -pi -e 's/foo/bar/g' /tmp/newxml.xml", $retval1);
#!/usr/bin/perl
use strict;
`echo 'mypassword' | gpg --passphrase-fd 0 --output outfile --decrypt inputfile`