Answers:
只需添加
cd /path/to/directory/you/care/about
到〜/ .bashrc文件的底部。
C:\cygwin\home\%USERNAME%
的Windows路径是Windows,这会使Windows路径变为~/.bashrc
C:\cygwin\home\%USERNAME%\.bashrc
。
定义“启动cygwin”?您可以在开机时运行cygwin服务器,但我假设这不是您的意思。
如果您的意思是,每次打开外壳程序提示符时都位于一个特定的文件夹中,则可以将其放入$ HOME / .bashrc中。
使用cygwin编辑器(使用UNIX行尾的编辑器)编辑$ HOME / .bashrc,添加一行
cd /whatever/directory/you/want
如果您经常访问此目录,则最好也设置一个别名。
在您的$ HOME / .bashrc中放:
alias GT='cd /whatever/directory/you/want'
随便你怎么称呼它;我只是将GT用于“去那里”,而我将其大写是因为它可以轻松地将其与永远不会大写的内置命令分开。
python脚本
!!在使用之前,将.bashrc任何字符串添加到末尾!
采用 name_script.py c:\path
path_bachrc
-.bashrc的路径
cmd
-cygwin.bat的路径
#***********************************************#
# gangelXXX@gmail.com #
#***********************************************#
import argparse
import subprocess
import os
path_bachrc = 'c:/PP/cygwin/home/adm/.bashrc'
cmd = 'c:\PP\cygwin\Cygwin.bat'
def delEndLineFromFile(filename):
with open(filename, 'r') as f:
aList = f.readlines()
bList = aList[0:-1]
with open(filename, 'w') as fd:
fd.writelines(bList)
parser = argparse.ArgumentParser()
parser.add_argument("newPath", type=str, help="New path in .bachrc cygwin")
args = parser.parse_args();
delEndLineFromFile(path_bachrc);
p = args.newPath;
pNew = 'cd /cygdrive/' + p[:1] + p[2:].replace('\\', '/')
print(pNew)
with open(path_bachrc, 'a') as f:
f.write(pNew)
PIPE = subprocess.PIPE
p = subprocess.Popen(cmd, shell = True)
此解决方案不需要编辑.bashrc:
以下是mkpasswd上官方文档的摘录:
例如,此命令:
示例3.11 使用备用主根
$ mkpasswd -l -p "$(cygpath -H)" > /etc/passwd
会将本地用户的主目录放在Windows的“个人资料”目录中。
(答案是从关于stackoverflow的类似问题复制而来的,因为我比这里的人更喜欢这种解决方案)