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

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

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

$ /???
bash: /bin: Is a directory
$ /????
bash: /boot: Is a directory
$ /?????
bash: /cdrom: Is a directory
$ /??????
bash: /libx32: Is a directory

答案1

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

/bin在大多数系统上都是第一个,它是一个目录而不是可执行文件,因此您会收到您发布的错误。

这与 , 属于同一类型的扩展,并且对于诸如一组文件的名称具有共同结构而仅更改一些固定字符的*情况可能很有用。cp file??.txt dest

相关内容