尝试递归地将文件移动到组合文件夹,需要重命名同名文件,备份方法不起作用

尝试递归地将文件移动到组合文件夹,需要重命名同名文件,备份方法不起作用

我有一个大目录“Pictures”,其中有很多单独的子目录,每个子目录中都有不同数量的图像文件。我想将子目录中的每个文件移动到一个统一的目录中。

需要克服的一项挑战是各个子目录中存在许多同名文件。即图片/Subdir1/dsc_001.jpg、图片/Subdir15/dsc_001.jpg、图片/Subdir120/dsc_001.jpg

由于我想保留两者,因此我尝试在查找一行中使用备份标志,如下所示:

find . -type f -exec mv --backup=t '{}' /media/DATA-HDD/AllImages \;

但是,经过测试,所有源文件都会移动,但不会发生重命名。我只有一个文件,它恰好是最后移动的文件。我也尝试以相同的方式使用 cp,但结果相同。

在此虚拟机上运行 Ubuntu 20.04。

我已经检查了 coreutils 的人,这就是它所说的要做的,所以不确定为什么它没有按计划工作。

答案1

事实证明,单行命令确实正是我所需要的,并且一直在工作。我最初不明白的是输出/备份文件实际上是一个隐藏文件。不确定那是格式。我没有在终端中列出目录,而是只在 GUI 中查找,并且没有打开查看隐藏文件。当我运行 ls -l 后,我看到这些文件一直在那里。

-rw-rw-r-- 1 mike mike     140302 Jan 11  2020  test.JPG
-rw-rw-r-- 1 mike mike     140302 Jan 11  2020  test.JPG.~1~
-rw-rw-r-- 1 mike mike     140302 Jan 11  2020  test.JPG.~2~
-rw-rw-r-- 1 mike mike          0 Aug 15 02:34  test.txt
-rw-rw-r-- 1 mike mike          0 Aug 15 02:34  test.txt.~1~
-rw-rw-r-- 1 mike mike          0 Aug 15 02:32  test.txt.~2~
-rw-rw-r-- 1 mike mike          0 Aug 15 02:34  test.txt.~3~
-rw-rw-r-- 1 mike mike          0 Aug 15 02:34  test.txt.~4~
-rw-rw-r-- 1 mike mike          0 Aug 15 02:43  test.txt.~5~
-rw-rw-r-- 1 mike mike          0 Aug 15 02:43  test.txt.~6~
-rw-rw-r-- 1 mike mike          0 Aug 15 02:34  test.txt.~7~
-rw-rw-r-- 1 mike mike          0 Aug 15 02:34  test.txt.~8~

相关内容