php中使用system函数执行linux系统命令mv怎么不行呢?
我想把file1目录里的文件移动到file2,php中这样写:system('mvfile1file2’,$return);是不是不对呢?求助……...
我想把file1目录里的文件移动到file2,php中这样写:system('mv file1 file2’,$return);是不是不对呢?求助……
展开
2个回答
展开全部
这样写是正确的。你执行代码后是否报错?还是只是没有效果?
$return变量会返回执行命令的输出的最后一行,你可以打印出来检查一下。
执行系统命令也可以使用反引号`,我比较喜欢这样用
<?php
echo `mv file1 file2`;
您的采纳就是对我的支持!
更多追问追答
追问
echo 'Return value: ' . $return;返回的值为1,文件没移动成功。我先是用system("cd /var/www/php");到file1和file2的上级目录,然后再用system('mv file1 file2’,$return);移动文件。请问这样是不是有问题呢?
追答
这样是有问题的。cd要和执行的命令写在一起,因为它们是两次系统调用。
看我交互模式下输出的结果:
Interactive shell
php > `cd /Users/admin`;
php > `rm data`;
rm: data: No such file or directory
php > `cd /Users/admin; rm data`;
php >
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询