在子目录中查找文件的脚本

问题描述 投票:0回答:2

我需要一个脚本来查找并获取所有子目录中的所有文件(并将它们保留在现在的文件夹结构中)。我知道如何查找并打印该文件:

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/{} \;

谢谢。

windows bash search cygwin
2个回答
1
投票

不用在整个当前目录下搜索(

.
),只需在您关心的目录下搜索即可:

find */trunk/*/src/main/resources -name "something.extension"

0
投票

编写一个脚本,该脚本将找到 scripting/somefiles/source/ 目录的每个子目录中的所有 .o 文件和可执行文件并将其删除 强文字

© www.soinside.com 2019 - 2024. All rights reserved.