find exec cp - 复制文件而不覆盖重复项

find exec cp - 复制文件而不覆盖重复项

我有几个具有匹配文件名的目录:

Foo/
  one.pdf
  two.pdf
  three.pdf
Bar/
  one.pdf
  two.pdf
  three.pdf
Baz/
  one.pdf
  two.pdf
  three.pdf

...我想将所有文件移动到一个名为“all_unsigned”的目录中。

当我运行这个命令时:

$ find . -type f -name *.pdf -exec cp {} ./all_unsigned/ \;

...由于名称匹配,我最终只得到每个文件名的一个实例。如何移动所有文件而不发生冲突?我很喜欢在每个文件名前面加上文件夹名称等。相对于某种多行脚本,真正粗糙的单行脚本更受欢迎。

相关内容