工作中用到linux合并文件夹,记录一下
#安装tree
yum install tree
tree --inodes #可以显示文件夹的结构
├── [ 521223] dir1
│ └── [ 521224] a
│ ├── [ 521231] 1.txt
│ ├── [ 521226] 2.txt
│ └── [ 521227] 3.txt
└── [ 521228] dir2
└── [ 521229] a
├── [ 521231] 1.txt
├── [ 521232] 4.txt
└── [ 521233] 5.txt
比方说
文件夹下有两个待合并的文件夹 dir1 和 dir2 目录结构如上图
能想到的传统做法就是循环复制进去,判断文件夹内是否有这个文件,没有就进行复制
Linux自带命令cp 可以完成这一工作
\cp -rf --link dir2/* dir1/
cp 即copy缩写, 通过 alias命令可以看到是 cp -i 的缩写,系统防止你覆盖掉重要文件,所以会有提示,在cp之前加个反斜杠 \ 可以直接使用系统命令
-r 递归目录
-f 强制覆盖
--link 创建的是文件硬链接,不是副本
网友评论