当我在Windows机器上开发Ruby on Rails时,我需要使用cygwin来模拟Unix命令提示符.现在的问题是,每次当我打开cygwin的终端的时候,我把这个目录C:/ Cygwin的/家/ my_user_name而不是Windows的默认用户目录C:/用户/ my_user_name.
有谁知道如何将cygwin的默认主目录设为Windows默认的C:/ Users/my_user_name目录?
我已经浏览了Stack Overflow中提供的各种解决方案,但它们都不适合我,"mkpasswd"也不起作用.这与我的操作系统版本有什么关系,或者其他什么?
我使用的是cygwin 1.7.5,我的操作系统是Windows 7 Business 64位.
我只需在Windows中设置HOME环境变量即可更改我的C:\Users\MyUsername.当我启动Cygwin时,现在看起来就在那里.这有一个额外的好处,就是让常规Win32上的Emacs(即不通过Cygwin)在正确的位置启动而不是在C:\Users\MyUsername\AppData\Roaming(因此在那里寻找.emacs和.emacs.d)
根据Cygwin文档,您可以编辑/etc/nsswitch.conf和更改de db_home参数.
以下是我的/etc/nsswitch.conf的内容,用于home在每个用户目录中创建目录
# /etc/nsswitch.conf
#
# This file is read once by the first process in a Cygwin process tree.
# To pick up changes, restart all Cygwin processes. For a description
# see https://cygwin.com/cygwin-ug-net/ntsec.html#ntsec-mapping-nsswitch
# Defaults:
# passwd: files db
# group: files db
# db_enum: cache builtin
# db_home: /home/%U <------ This was the default setting
db_home: /%H/home # db_home: /home/%U <- This was the default setting
# db_shell: /bin/bash
# db_gecos: <empty>
Run Code Online (Sandbox Code Playgroud)
重新启动任何Cygwin进程