bash - 我的 bash 可能会识别小写和大写是相同的
问题描述
mv readme.md README.md
然后我收到消息
'readme.md' and 'README.md' are the same file
为什么我的 ubuntu 不能识别小写和大写..?
cd
它运作良好,但是,例如我想移动 src 目录,
CD src
然后我收到消息
bash: CD: command not found
没有这种情况,我的 bash 运行良好..
env ubuntu 18.04 告诉我是否获得更多信息以解决问题。
解决方案
您可能正在使用不区分大小写的 NTFS 或 VFAT 文件系统。在超级用户上查看此答案:https ://superuser.com/a/431346 。
但是 bash 在所有情况下都区分大小写,这就是为什么CD
是未知命令的原因。
正如评论中提到的,OP 在 Docker 容器中运行 Ubuntu 时使用 OSX 作为主机。Docker 在 OSX 上使用osfx文件系统。
Docker 文档是这样说的:
使用 Docker Desktop for Mac,文件系统在容器中的运行方式与它们在 macOS 中的运行方式相同。如果 macOS 上的文件系统不区分大小写,则该行为由 macOS 到容器的任何绑定挂载共享。
还有这个:
在 macOS Sierra 及更低版本上,默认文件系统为 HFS+。在 macOS High Sierra 上,默认文件系统是 APFS。默认情况下两者都不区分大小写,但在区分大小写和不区分大小写的变体中可用。
因此,您的问题的解决方案是为您的主机操作系统启用区分大小写功能,以便为您的 Docker 虚拟机启用它。
推荐阅读
- javascript - 杏仁糖 + ReactJS?
- angular - 未找到模块:错误:无法解析“fs”角度
- python - 管理员无法创建新条目
- javascript - 根据属性将数组转换为地图的快捷方式
- javascript - setInterval() 在 Firefox 上不起作用
- azure - Azure Service Fabric 中 Reliable Dictionary 中的数据如何保存到磁盘
- javascript - 在 Javascript 中以 CSV 格式下载数据
- bash - 将自定义环境变量传递给 nohup
- c - 如何使用嵌入式 C 启动 ARM Cortex 编程?
- javascript - FormArray 的用法和动态添加一行控件