我重新安装了 Windows,并下载了新版本的 Cmder,在启动时注意到了此消息:
env: /usr/bin/locale: No such file or directory
我想知道该如何修复它。
由于某种原因,Cmder 的启动时间也比以前更长。
代码
我查看了代码,发现了这个脚本,它查找与 Git 检查相关的文件夹:
https://github.com/cmderdev/cmder/blob/master/vendor/init.bat#L279
我的系统中已经安装了 Git,所以我不知道还需要做什么才能使其工作。
答案1
你似乎遇到了与 Cmder 错误报告 #1956 相同的错误 Git 检测应使用来自 git install root 的 env。
报告作者对这一问题的分析是:
我的系统(显然 Jorg 的系统)出现错误的原因在于,
env.exe
我的路径中有一个 ,它不会自动转换/usr/bin/locale
为“我的路径中的 locale.exe”。我的系统env.exe
实际上尝试执行/usr/bin/locale
,但由于/usr/bin/locale
不存在,因此会引发错误。问题实际上是关于脚本假设其env
工作方式与 git 提供的环境类似,而这种假设在某些系统上是不成立的,它会导致用户难以修复的错误。
检查 PATH 中项目的顺序并确保正确env
调用。
答案2
我遇到了同样的问题,因为我之前安装了“GitHub Desktop”,然后我cmdermini
使用 进行安装chocolatey
。事实是,cmder
确定已安装git
,因为安装了“GitHub Desktop”,您可以使用where env
命令检查它,输出大致如下:
"C:\Users\yourname\AppData\Local\GitHubDesktop\app-1.6.2\resources\app\git\usr\bin\env.exe"
(可能您没有安装“GitHub Desktop”,而是安装了另一个删减版本git
。)
但是在这个目录中缺少某些文件,特别是“locale.exe”。cmdred
启动时执行中描述的任务init.bat
,并且有一个用于本地化的部分,其中使用文件locale.exe。cmder
找不到文件,并正确地通知您有关此信息。
有不同的方法可以解决这个问题。
- 例如,您可以
git
在虚拟机上安装完整版本,然后简单地locale.exe
从
"C:\Program Files\Git\usr\bin"
到你的目录
C:\Users\yourname\AppData\Local\GitHubDesktop\app-1.6.2\resources\app\git\usr\bin.
最重要的是git
位数匹配(例如,在您的计算机和虚拟机上为 64)。
或者,您可以安装另一个版本,
git
例如使用chocolatey
并编辑系统变量 PATH,以便 cmder 使用它。或者编辑启动任务
cmder
,尝试禁用locale.exe搜索in init.bat
。也许您可以安装其中
cmder
包含的完整版本git
。