我想将文件移至 中./dir1/subdir1
,/dir2
这样最终结果是存在一个/dir2/dir1/subdir1
包含先前包含在 中的文件的目录subdir1
。
我想对使用 find 命令找到的所有文件执行此操作,因此该命令接受 form 的输入很重要movecommand ./dir1/subdir1 /dir2/
,即我不必重复第二个参数的内部结构。
有没有好的方法可以做到这一点?
答案1
mv 将复制目的地中的“最后一个”对象。根据您的情况,您可以先创建目标目录,然后移动文件
mkdir /dir2/dir1/
mv /dir1/subdir/ /dir2/dir1/
或者使用 rsync 复制并删除源然后
rsync -av dir1 dir2/
sending incremental file list
dir1/
dir1/subdir/
dir1/subdir/test1
dir1/subdir/test2
rm -r dir1