我有一个Cygwin安装,我希望每次启动时都能在某个目录中启动Bash。我怎样才能做到这一点?
答案 0 :(得分:5)
在您的~/.bashrc
中,您可以将 [已尝试但无效]添加{{1}到文件末尾的那个目录。$HOME
更改为该目录,或者您可以
答案 1 :(得分:1)
在~/.bash_profile
中,您可以简单地写cd /cygdrive/c/path/to/where/you/want/cygwin/to/start
。您可以在<path_to_cygwin>\home\<user>\.bash_profile
下的cygwin安装文件夹中找到此文件。 (就我而言:C:\cygwin64\home\User\.bash_profile
)。
答案 2 :(得分:0)
python脚本
!!使用之前添加.bashrs任意字符串到最后!!
使用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)
答案 3 :(得分:0)
Bash on Cygwin在你的主文件夹中启动,就像在Linux上一样,Cygwin尽可能地模仿它。所以,您只需要change your home folder。
(请注意,您的Cygwin文件夹不必与Windows用户主文件夹相同。默认情况下,它们不同,但您可以通过将/cygdrive/c/Users/myid
之类的内容添加到您的Cygwin用户条目中来使它们相同。 /etc/passwd
。)