文件路径中双星 (**) 的含义

Posted

技术标签:

【中文标题】文件路径中双星 (**) 的含义【英文标题】:Meaning of a double star (**) in a file path 【发布时间】:2018-03-14 19:47:42 【问题描述】:

我正在阅读 here on Stack Overflow 关于路径中的 **,如下例所示:

src/js/**/*.js

请问“**”是否表示“任何嵌套目录”?!

【问题讨论】:

如果我没记错的话,src/js/**/*.js 匹配.js 目录下的所有.js 文件,在任何深度,无论子目录结构如何。 Two asterisks in file path的可能重复 What is the ** glob character?的可能重复 【参考方案1】:

本例中的双星表示当前文件夹内的所有文件夹,当前文件夹为src/js

因此,在 src/js 的所有子文件夹中查找所有扩展名为 .js 的文件

【讨论】:

【参考方案2】:

双星号是递归解释器遍历文件和文件夹的占位符或指令。它是一个简单的递归通配符,而只有一个星号表示全部没有递归。

'**/*.js'; 从这里开始所有扩展名为 .js 的文件。

'lib/**/*.js'; 文件夹 lib 及其子文件夹中所有扩展名为 .js 的文件。

'js/**';文件夹js及其子文件夹中的所有文件。

【讨论】:

以上是关于文件路径中双星 (**) 的含义的主要内容,如果未能解决你的问题,请参考以下文章

相对路径与绝对路径的含义

路径中的点“./”“../”“/”代表的含义

路径中“./”“../”“/”代表的含义

VB.Net 2010中 ./和../的含义

Linux指令(基础)

01-Linux的基本指令