9

我的 bash 中的目录列表区分大小写有问题。例如

   $ touch  nohupa nohuPb
   $ ls nohup*
   nohupa  nohuPb

但是我确实希望它只列出 nohupa 而不是 nohuPb。因为 nohuPb 有大写 P。我不知道我的 .bashrc 集中的哪个变量 * 可以忽略大小写。

任何想法 ?

4

2 回答 2

9

就是nocaseglob这个原因。

nocaseglob
如果设置,bash 在执行路径名扩展时以不区分大小写的方式匹配文件名(请参阅上面的路径名扩展)。

测试

$ touch fooab fooAb
$ ls
fooAb fooab
$ shopt -s nocaseglob
$ ls fooa*
fooAb fooab
$ shopt -u nocaseglob
$ ls fooa*
fooab
于 2012-01-12T00:53:18.353 回答
2

看起来你的外壳有这个nocaseglob设置。您可以使用shell built-in被调用的shopt. 使用它的选项和它-s的选项。enable-udisable

如需更多参考,您可以访问此处

于 2012-01-12T01:00:17.620 回答