久远之前安装的 Cygwin,被闲置了一段时间,昨天要用却发现不干活了。具体的表现在于,进入命令行下,绿色显示的用户名提示符看不到,执行任何命令都说找不到。感觉和环境变量有关系,在系统的命令提示符下看 set 的输出,没有找到可疑线索。
求教于三火兄,三火兄第一时间告诉我说确实和环境变量有关,不过是在注册表里,但具体路径不记得了。于是用“Cygwin 注册表”做关键字搜索,找到了注册表路径是:HKEY_LOCAL_MACHINE/SOFTWARE/Cygnus Solutions/Cygwin/mounts v2/。接下来的事情就很奇怪,网上说的这个键下的值,我的注册表里好好的,全都有。文章里介绍,Cygwin 不需要安装就能使用的秘诀就是这个。
我突然想起,难道有什么设置能够优先于这些注册表项?第一时间想起 HKEY_CURRENT_USER 下的相同路径键。打开一下,果不其然,里面有不完整的信息,而且值中指定的 Cygwin 路径是一个已经不存在的位置。我把 mount v2 改了个名字,到桌面上双击 Cygwin 的快捷方式进入,果然熟悉的绿色提示符又出现了。顺便说一下,那个不存在的路径指向一次 Symbian^3 的 PDT 安装路径下的子目录,可见是 PDT 自己带了一份 Cygwin,修改了 HKEY_CURRENT_USER 下的相应键值,但是卸载的时候却没有清理干净,遗留下了垃圾所致。