首页 > 解决方案 > 创建一个目录并将文件移动到与模式匹配的目录中

问题描述

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

必须先创建 testdir 目录

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

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

标签: bashexec

解决方案


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

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

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


推荐阅读