【发布时间】:2020-05-29 10:53:26
【问题描述】:
寻找 bash 脚本: 情况如下: 我的备份目录驱动器上有 1000 个文件夹和子文件夹 让我们说......
- /备份
- /备份/文件夹A
- /backup/folderA/FolderAA
- /备份/文件夹B
- /backup/folderB/FolderBB
我在辅助位置有数十个类似的文件夹(其中包含文件),文件夹名称将与主备份驱动器中的文件夹或子文件夹之一匹配。
我想将特定扩展类型的所有内容从我的辅助位置 $FolderName 移动到备份位置 + 匹配的子文件夹,前提是 $FolderName 完全匹配并从我的辅助位置删除文件夹!
如果备份位置中没有对应的文件夹或子文件夹,则保留源文件夹和文件。
期待获得一些帮助/指导。
迈克
请求的其他信息。预期的输入和输出
假设我有以下内容: 备份文件夹
/backup/test/file.bak
对于我的辅助文件夹位置:
/secondarylocation/mike/test/hello/john.bak
/secondarylocation/mike/test/hello/backup.zip
我希望这是最终结果
/backup/test/file.bak
/backup/test/john.bak
/backup/test/backup.zip
和 /secondarylocation/mike/test *以及删除的子文件夹和文件
【问题讨论】:
-
添加所需的输入和输出。
-
试试
rsync命令 -
alecxs - 因为在我的次要位置有一个名为 test 的文件夹,在我的备份位置也有一个名为 test 的文件夹,所以匹配!!
-
您希望“仅在 $FolderName 匹配时移动匹配的子文件夹”,但是您将
hello与test合并。当只有 parent 匹配时,您想从 all 子文件夹中移动文件吗?你想保留树还是只保留它的文件?并且在其他子文件夹中存在重复文件名时是否要覆盖文件? -
alecxs - 如果文件夹匹配,那么我想将所有 .bak 和 .zip 文件从源位置(包括所有子文件夹)移动到我备份位置上的对应文件夹 - 我不想保留文件夹结构次要位置 - 只是文件的移动。迈克。