正如标题所说,我正在寻找最可靠的方法来检测文件系统是否区分大小写,只要提供给定的路径。
在过去,我使用了以下肮脏的技巧:
[ -e "/tmp" -a -e "/Tmp" ] && echo "Case insensitive" || echo "Case sensitive"
这是有效的,因为系统通常不会同时包含/tmp
和/Tmp
文件夹。这当然是hacky,并且不使用任意路径,因为它可能指向没有任何文件夹的设备。
我的想法是做一些事情,比如获取路径的目录(应该存在)并以某种方式“翻转”它的情况(所以大写字母变为小写字母,反之亦然),但我不知道该怎么做那个;我可以将所有从低到高翻转,但如果目录的名称已经全部为大写,则不会有任何用处。
无论如何,我正在寻找关于检测文件系统是否区分大小写的最佳方法的建议,最好不要创建临时文件。
答案 0 :(得分:0)
[ -e "${PWD^^}" ] && echo "Case insensitive" || echo "Case sensitive"