我的bash中存在区分大小写的目录列表问题。例如
$ touch nohupa nohuPb
$ ls nohup*
nohupa nohuPb
但是我确实期待它只列出nohupa而不是nohuPb。因为nohuPb有资本P. 我不知道我的.bashrc设置中哪个变量*工作忽略大小写。
有什么想法吗?
答案 0 :(得分:9)
nocaseglob
导致了这一点。
nocaseglob
如果设置,bash匹配不区分大小写的文件名 执行路径名扩展时的时尚(请参阅路径名扩展 上文)。
测试
$ touch fooab fooAb
$ ls
fooAb fooab
$ shopt -s nocaseglob
$ ls fooa*
fooAb fooab
$ shopt -u nocaseglob
$ ls fooa*
fooab
答案 1 :(得分:2)
看起来您的shell设置了nocaseglob
。您可以使用名为shell built-in
的{{1}}取消设置。使用shopt
选项-s
和enable
选项-u
。
如需更多参考,请访问here。