【发布时间】:2023-03-17 01:00:02
【问题描述】:
我目前正在尝试重现基本的 shell 行为,更具体地说是 globbing 行为。 我正在测试带有花括号的命令,发现这种行为我不明白。 首先,我正在工作的目录的内容如下:
1abc 2abc 3abc abc1 abc2 abc3
然后,我输入了以下命令:ls {[1-3],[a-c]}*,它按预期返回了上面的所有文件。
最后,我尝试了这个命令:ls {{,[1-3]},[a-c]}*,如您所见,它有叠瓦状的花括号。现在我不明白的是这个命令的返回,因为它给了我这个:1abc 1abc 2abc 2abc 3abc 3abc abc1 abc1 abc2 abc2 abc3 abc3
如您所见,所有文件都返回了两次,我无法弄清楚 shell 是如何解释的。
我希望我的解释很清楚。
【问题讨论】:
标签: linux bash shell glob brace-expansion