我正在使用 WSL1。
我正在尝试使用将我的 ~./miniconda/envs 文件夹的副本保存到桌面
cp
。我一直收到类似这样的错误
cp: cannot create regular file './envs/py_env/share/terminfo/h/hp2621a': File exists
问题在于有 2 个文件名称相同但大小写不同。例如,
hp2621a
和hp2621A
。
例子:
原始文件夹:hp2621a
,,hp2621A
etc
使用cp
我得到:
- 新建文件夹:
hp2621A
,etc
- 丢失的:
hp2621a
py_env/share
和的一些子目录py_env/lib
也存在类似的问题(A
并且a
似乎发生冲突)我可以通过将目录名称从 更改为 来解决其中的一些
A
错误A_1
。
答案1
从评论来看,你似乎已经找到了这个——有一些好的文档为什么会发生这种情况以及如何处理。
默认情况下,Windows NTFS 驱动器上的文件夹不区分大小写;A
并且a
文件名相同。但是,一段时间以来(自 2018 年以来),Windows 能够逐个目录(和可继承)指定区分大小写。为此:
放置这些文件的目录一开始必须是空的。要么从现有目录中删除所有内容,要么在桌面上创建一个新的空目录。我们假设这个目录的名称是
$env:USERPROFILE\Desktop\env
。从 PowerShell 运行:
fsutil.exe file setCaseSensitiveInfo $env:USERPROFILE\Desktop\env enable
这些应该就是你的命令正常工作所需的全部内容cp
。如果不是,请参阅文档页面以了解更多选项和详细信息。