Bash 移动多个同名文件并动态重命名它们

Bash 移动多个同名文件并动态重命名它们,bash,ubuntu,terminal,rename,move,Bash,Ubuntu,Terminal,Rename,Move,我的ubuntu 16.04中有多个文件夹,其中有图片。我想将所有图片移动到一个文件夹,并用相同的名称重命名所有文件 我可以轻松地从第一个文件夹中移动图片,但如何从其余文件夹中复制图片而不销毁(复制)所有同名的现有文件 是否有一些方便的oneliner可以在终端中使用?有一个有用的选项--backup=numbered,它在文件名中添加一个编号后缀,否则会被删除 如果目录树包含重复的文件名,则可以将cp与find组合以折叠结构。(免责声明:我没有对此进行测试,因此请小心行事。) 多谢各位:

我的ubuntu 16.04中有多个文件夹,其中有图片。我想将所有图片移动到一个文件夹,并用相同的名称重命名所有文件

我可以轻松地从第一个文件夹中移动图片,但如何从其余文件夹中复制图片而不销毁(复制)所有同名的现有文件

是否有一些方便的oneliner可以在终端中使用?

有一个有用的选项
--backup=numbered
,它在文件名中添加一个编号后缀,否则会被删除

如果目录树包含重复的文件名,则可以将
cp
find
组合以折叠结构。(免责声明:我没有对此进行测试,因此请小心行事。)

多谢各位:


欢迎使用堆栈溢出!请更新您的问题,以显示您已在中尝试了什么,并添加示例输入和预期输出。欲了解更多信息,请参阅,并使用:),因此这不是免费的编码服务
find $SOURCEDIR -type f -exec cp --backup=numbered '{}' $TARGETDIR \;