将目录移动到其他目录并保留目录结构

将目录移动到其他目录并保留目录结构

我想将文件移至 中./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

相关内容