cygwin 下分区文件名大小写

本文详细介绍了如何在Cygwin环境下配置Windows系统以区分文件名的大写和小写,包括修改注册表启用大小写敏感性、调整fstab文件使用POSIX API、以及在NTFS文件系统下创建不同大小写的文件名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求:
cygwin下能够区分文件名大小写,比如JIN.txt和jin.txt能够在同一个目录下共存
背景知识:
1.windows NT以上的kernel可以支持case-sensitivity,但默认没有开启
2.windows下只有ntfs和nfs可以支持case-sensitivity
3.win32 subsystem不支持case-sensitivity,也即win32 API不支持case-sensitivity
4.要让windows下应用程序支持case-sensitivity,必须做到:
(1)使用ntfs或nfs的文件系统
(2)不使用win32 API,使用比如posix API
解决办法:
(1)修改windows注册表,让windows kernel支持case-sensitivity:
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\obcaseinsensitive
obcaseinsensitive设为0
(2)修改cygwin的/etc/fstab文件
将"posix=0"改为"posix=1"
这样做应该是让cygwin使用posix api,而不使用win32 api
(3)在cygwin下,在ntfs的文件系统下,在同一个目录下,执行:
# touch JIN.txt
# touch jin.txt
就可以看到JIN.txt和jin.txt 这两个文件了
注意:
但是在windows下,在ntfs的文件系统下,我们还是不能同时创建JIN.txt和jin.txt,原因在于我们创建时使用的是win32 API,而win32 API是大小写不敏感的,所以会创建失败。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值