h.j*_*.k. 10 bash zsh history brace-expansion
我终于理解/发现了为什么我从来没有正确使用bash
's(以及zsh
's)大括号扩展范围:语法{1..10}
代替了我假设的省略号,即{1...10}
.
我可以知道为什么选择两个点而不是三个点吗?如(维基百科)链接所示,省略号在计算机编程中的使用很常见并且很好理解,这就是为什么这激起了我的好奇心。
(由于评论中的贡献,改为作为社区 wiki 发布)
从 Bash 到 Z Shell(第 8 章,第 186 页,“用大括号生成数字”)一书中提到这种语法是从Perl借来的。
此外,还建议 Pascal 的..
范围符号可以追溯到1970 年(重点是我的)(“ The Programming Language Pascal ”,第 6.1.2 节,链接 PDF 的第 17 页)。
总之,即使是问题中的维基百科链接也说明了一些使用示例..
。省略号严格定义为三个点的序列的假设,因为它是一个标点符号,在这里不成立。