如何在所有子目录中找到所有具有相同名称的文件

时间:2011-06-24 15:41:24

标签: linux bash filesystems find file-globs

我想找到所有不同的.gitignore文件,我必须将它们合并为一个。

我试过像find */**/.gitignore这样的东西,但却什么都没有。

所有文件都在我当前目录的子目录中,以及当前目录。

我在linux上使用Bash

2 个答案:

答案 0 :(得分:8)

find -name .gitignore

应该这样做

因为你正在使用bash:

shopt -s globstar
echo **/.gitignore

来自man bash

   globstar
          If set, the pattern ** used in a pathname expansion context will match a
          files and zero or more directories and subdirectories.  If the pattern is
          followed  by  a /, only directories and subdirectories match.

答案 1 :(得分:1)

试试这个

find /home/user1 -name 'result.out' 2>/dev/null

在你的情况下

find /<your DIR> -name '*.gitignore' 2>/dev/null

这导致

/home/user1/result.out
/home/user1/dir1/result.out
/home/user1/dir2/result.out