我正在尝试将超过特定日期的文件移动到新文件夹,并且我不断收到以下错误。 mv:target'/ / / * / 。'不是目录。 这是我的命令行:
find /mnt/data1/sqlbackup/dataFiles/FOLDERII -mtime +300 -exec
mv -t '{}' /mnt/data1/sqlbackup/dataFiles/oldfiles \;
任何帮助表示感谢。
答案 0 :(得分:2)
修正参数的顺序。 -t
之后的参数应该是文件应该移入的desination目录。
find /mnt/data1/sqlbackup/dataFiles/FOLDERII -mtime +300 -exec
mv -t /mnt/data1/sqlbackup/dataFiles/oldfiles {} \;
或者您可以完全省略-t
选项。如果它是目录,mv
会自动将最后一个参数视为目标目录。
find /mnt/data1/sqlbackup/dataFiles/FOLDERII -mtime +300 -exec
mv '{}' /mnt/data1/sqlbackup/dataFiles/oldfiles \;
答案 1 :(得分:1)
从man page开始,mv可以通过三种方式使用:
- mv [OPTION] ... [ - T] SOURCE DEST
- mv [OPTION] ...来源......目录
- mv [OPTION] ... -t DIRECTORY SOURCE ...
您正在使用-t
标志,因此您需要在要移动的文件之前传递目标目录。