2017-10-06 92 views
0

我有以下目录:/c/methuselah/g2project循环浏览目录中的文件夹/子文件夹并检查.gitignore文件

我想遍历该目录中的文件夹/子文件夹,并检查包含.gitignore文件的任何文件夹。一旦找到它,我想将包含文件的子目录打印到屏幕上。

例如:

g2project/folder1/ 
g2project/folder1/subfolder1 
g2project/folder2/ 
g2project/folder2/subfolder1 
g2project/folder2/subfolder2 
g2project/folder2/subfolder3 

如何做到这一点在bash?

+0

输出格式是否重要?例如绝对路径会好吗?是否省略.gitignore文件名很重要? – Aaron

+0

格式不重要,.gitignore文件名可以是输出的一部分。 – methuselah

回答

1

可以使用find

find /c/methuselah/g2project/ -name .gitignore 

另一种方法是使用globstar选项,这使得能够与**水珠递归匹配(可以在任何命令中使用,因为它是由bash展开):

shopt -s globstar 
ls /c/methuselah/g2project/**/.gitignore