我非常喜欢善变的 .hgignore 风格的通配符。有支持它的 Linux shell 吗?

我非常喜欢善变的 .hgignore 风格的通配符。有支持它的 Linux shell 吗?

我相当喜欢Mercurial .hgignore 风格的模式通配符

Glob 的根目录为当前目录;诸如 *.c 之类的 glob 将仅匹配当前目录中以 .c 结尾的文件。

支持的 glob 语法扩展是 ** 用于匹配路径分隔符之间的任何字符串,而 {a,b} 则表示“a 或 b”。

有支持这个的 Linux shell 吗?

答案1

所有 shell 都支持标准 glob *.c。 KSH、Bash 和 ZSH 支持大括号扩展 ( {a,b}),但请注意,这不是文件 glob,因此它始终会扩展。 ZSH 的扩展通配符和 Bash globstar(bash v4 或更高版本)支持**递归通配符。

相关内容