【发布时间】:2011-12-11 08:43:07
【问题描述】:
鉴于已挂载的 cifs 文件系统 /network/cifs 不区分大小写,我如何使用 C 获取区分大小写的路径?
例如,fs 有一个文件/network/cfis/Adena/t.txt。给定/network/cfis/AdEnA/T.txt(正确解析),我想要/network/cfis/Adena/t.txt。
我知道一种方法是递归迭代路径,以所有小写形式匹配它们,并获取目录迭代返回的实际大小写。但是,这涉及到很多我不想做的系统调用。
更改挂载选项不是解决方案。
如果这不可能,是否可以确定路径是否在不区分大小写的文件系统上?这样,除非需要,否则我可以避免进行递归目录迭代。
【问题讨论】: