![]() |
1
95
这将在bash 4中起作用:
为了使双星号glob工作,请
从
globstar If set, the pattern ** used in a filename expansion conâ text will match a files and zero or more directories and subdirectories. If the pattern is followed by a /, only directories and subdirectories match.
现在我想知道全球之星处理中是否曾经出现过错误,因为现在只使用
不管怎样,我看着 analysis Kenorb确实使用了VLC存储库,并在分析和我上面的回答中发现了一些问题:
与
然而,最重要的是,使用
例子:
在我们当前的目录中是子目录
在那棵树上,
所以使用
这又是你不应该的另一个原因
parse
作为进一步分析的结果,我建议在任何情况下都不要使用globstar模式,除非以这种方式迭代文件树:
作为最后的比较,我使用了一个我手边有的bash源代码存储库,并做了以下操作:
我用过
|
![]() |
2
12
这将打印当前目录及其以“.ext”结尾的子目录中的所有文件。
|
![]() |
3
5
你可以使用:
请在下面找到其他变体的测试以及它们的行为。 样本中包含3472个文件的测试文件夹 VLC 存储库文件夹:
(文件总数3472份,按:
所以我认为最接近递归列出所有文件的方法是第一个例子(
另一个产生了更多的重复。
要包括隐藏文件,请使用:
|
![]() |
4
3
这将列出当前目录中的所有文件。然后可以使用-exec对输出执行其他命令
这将使find中的每个文件中的字符串“foo”变灰。 |
![]() |
5
2
为什么不使用大括号扩展来包含当前目录呢?
大括号扩展发生在全局扩展之前,因此您可以有效地使用旧版本的bash执行您想要的操作,并且可以在新版本中放弃与globstar的monkeying。
此外,在bash中加入领导层被认为是很好的做法
|
![]() |
lonix · 使用sed从JSON中提取非贪婪正则表达式 1 年前 |
![]() |
g00dds · 如何在bash中从文件中的每一行解码base64? 2 年前 |
![]() |
Paul · Bash wait命令忽略指定的进程ID 2 年前 |
![]() |
RafaÅ G. · 如何使用从文件读取的多行参数运行ssh? 2 年前 |
![]() |
Priya · 在shell脚本中多次运行python脚本 2 年前 |