哪里 '/?' 参数扩展记录?

Hol*_*ock 0 bash dash bash-expansion

我遇到了 bash/dash 这个奇怪的参数扩展,我没有找到任何参考。这种扩展叫什么?它在哪里记录?

$ /???
bash: /bin: Is a directory
$ /????
bash: /boot: Is a directory
$ /?????
bash: /cdrom: Is a directory
$ /??????
bash: /libx32: Is a directory
Run Code Online (Sandbox Code Playgroud)

Mic*_*mer 5

这是使用 shell模式匹配的路径名扩展:匹配任何单个字符,因此按字母顺序扩展到每个三个字符的文件名。?/???/

这使得/bin第一在大多数系统中,这是一个目录,而不是可执行文件,所以你得到你所张贴的错误。

这是与 相同的扩展类型*,并且可能适用于以下情况:cp file??.txt dest一组文件的名称具有通用结构,只有几个固定字符发生变化。