创建目录并将文件移动到与模式匹配的目录中

Making a directory and moving files into that directory that match a pattern

我可以模式匹配文件并使用下面的行将它们移动到一个目录中。但是我需要先制作目录。

(必须先创建testdir目录)

find . -type f -name '*-bak*' -exec mv '{}' ./testdir ';'

我现在要做的是让代码行 同时创建目录 并使用同一行代码将与该模式匹配的文件移动到该目录中.

mkdir -p testdir && find . -type f -name '*-bak*' -exec mv {} testdir/ ';'

不过要小心,如果您在不同的文件夹中有两个同名的备份,您将只剩下一个副本,所有其他副本都会被覆盖!

编辑:在这种情况下使用 mv -i 获取提示而不是覆盖文件