Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在bash中使用find递归地过滤dotfiles?_Bash_Find_Dotfiles - Fatal编程技术网

如何在bash中使用find递归地过滤dotfiles?

如何在bash中使用find递归地过滤dotfiles?,bash,find,dotfiles,Bash,Find,Dotfiles,我已经到处找了,但似乎找不到这个看似简单的问题的答案 我有一个目录,其中包含一些点文件(它们恰好是.git,但很容易是.svn,甚至可能是其他文件)和一些非点文件。我正在搜索一个通用函数,该函数将列出此目录的所有子目录,但以句点开头的子目录除外 我想这是find的一种变体-键入d,但我试过几次咒语,结果都不成功 差不多 ls -R | grep / def find_文件(列表,目录): 对于listdir(目录)中的条目: 如果isdir(条目)不以点(条目)开头: listing.appe

我已经到处找了,但似乎找不到这个看似简单的问题的答案

我有一个目录,其中包含一些点文件(它们恰好是
.git
,但很容易是
.svn
,甚至可能是其他文件)和一些非点文件。我正在搜索一个通用函数,该函数将列出此目录的所有子目录,但以句点开头的子目录除外

我想这是
find的一种变体-键入d
,但我试过几次咒语,结果都不成功

差不多

ls -R | grep /
def find_文件(列表,目录):
对于listdir(目录)中的条目:
如果isdir(条目)不以点(条目)开头:
listing.append(条目)
查找_文件(列表、条目)
(奇怪没有人问这个问题-也许有一种更害羞的方式我没有看到?

试试看:

find . -mindepth 1 -name '.*' -prune -o \( -type d -print \)
尝试一下:

find . -mindepth 1 -name '.*' -prune -o \( -type d -print \)
…或…

…或…


我不确定这是否是您想要的,但是为了递归地列出bash中的所有子目录,我通常会这样做

ls -R | grep /
比我尝试的一些查找选项快得多。缺点是使用ls会在最后得到额外的冒号,但我不是这样


//编辑好的,我试着从这里找到其他答案,他们的工作相当快。。。但它们比ls更难记住

我不确定这是否是您想要的,但要递归地列出bash中的所有子目录,我通常会这样做

ls -R | grep /
比我尝试的一些查找选项快得多。缺点是使用ls会在最后得到额外的冒号,但我不是这样


//编辑好的,我试着从这里找到其他答案,他们的工作相当快。。。但它们比ls更难记住

不会
find-typed-a-名称“?*”-o-修剪
也做吗?不会
查找-type d-a-名称“?*”-o-修剪
你也这样做吗?