我需要一个脚本来查找并获取所有子目录中的所有文件(并将它们保留在现在的文件夹结构中)。我知道如何查找并打印该文件:
find . -name "something.extension"
重点是,在这些目录中有很多以前使用过的文件,但我不想获取这些文件,因此脚本应该只找到与某种路径模式匹配的文件,即:
xxx/trunk/xxx/src/main/resources
xxx每次都不一样,资源后面还有一些文件夹,目录根据xxx不同。
每个 top xxx 文件夹都包含名为“tags”的文件夹(与 trunk 相同级别),用于存储以前版本的模块(每个版本都有我正在查找的名称的文件,但我不想要过时的文件)。
因此,我想在我指定的路径模式的子目录中找到所有文件,并将其复制到新位置,但保留现在的文件夹结构。
我正在使用 Windows 和 cygwin。
更新
我结合了下面“那个人”发布的答案命令,它起作用了。只是为了清楚起见,我有这样的事情:
find */trunk/*/src/main/resources -name "something.extension" -exec mkdir -p /absolute/target/path/{} \; -exec cp {} /absolute/target/path/{} \;
谢谢。
不用在整个当前目录下搜索(
.
),只需在您关心的目录下搜索即可:
find */trunk/*/src/main/resources -name "something.extension"
编写一个脚本,该脚本将找到 scripting/somefiles/source/ 目录的每个子目录中的所有 .o 文件和可执行文件并将其删除 强文字