如何设置Mingw控制台的启动目录?我只使用Mingw进行编译。但由于缺乏编辑器甚至符号链接,我不知道如何告诉Mingw控制台在不同的目录中启动而不是常规主目录。
如果有人知道如何像Cygwin一样放置到NTFS驱动器的“真实”符号链接,那也会很有帮助。 Mingw复制内容,当在Subversion目录上工作时无用。
我是个懒人,每次都要输入cd /c/Documents/USER/.../Project让我感觉很痛苦:>
如果还有其他人在寻找答案,请注意以下内容:
我在桌面上有几个不同项目的快捷方式,这样我就可以快速在每个目录中启动终端并开始工作了!
打开shell
vim .profile (按ESC / i进入插入模式)
#!/bin/bash
cd /c/Users/jbr
(按ESC / wq以写入并关闭编辑器)
测试.profile bash文件:source .profile
关闭并重新打开shell。
它们可以工作,但仍然存在包含空格的路径问题(抱歉):
将其放置在您的路径中,以便您可以从cmd.exe运行它
@echo off
set STARTUP_DIR=%CD%
D:\MinGW\msys\1.0\bin\bash.exe --login
确保您设置了一个名为HOME的环境变量,该变量指向您想要设置为主目录的目录(必须没有空格!!)。例如,我的情况下是D:\Users\Myname。
将其放置在您的主目录中。
if [[ "$STARTUP_DIR" != "$PWD" ]]; then
cd $STARTUP_DIR
fi
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
{MinGW安装位置}\msys\1.0\msys.bat
时,shell会在文件夹{MinGW安装位置}\msys\1.0\home\jbr
中启动。
{MinGW安装位置}\msys\1.0\home\jbr\.profile
的文件,并将以下内容添加到其中:# Cd to my windows home:
cd /c/Users/jbr
msys.bat
时,我处于正确的位置:
我编辑了 C:\MinGW\msys\1.0\etc\profile
文件,并将第32行改为:
# Set up USER's home directory
if [ -z "$HOME" ]; then
HOME="/home/$LOGNAME"
fi
to:
HOME="/c/Users/$LOGNAME"
现在当我打开MinGW(msys)时,它使用默认的Windows主目录。这使得一些功能成为可能,例如~/.profile
,~/.ssh
等。
使用挂载点代替符号链接。mingw不支持ntfs符号链接(它们相对较新),但是对于大多数用例(例如在mingw之外访问您正在工作的目录),挂载点是可以的。
设置新的默认目录最简单的方法可能是在主目录中使用.bashrc
,并将其cd
到所需的目录。
如果有人知道如何像Cygwin一样将“真正的”符号链接放置到NTFS驱动器上,那将非常有帮助。mingw会复制内容,这在处理子版本目录时是无用的。
Cygwin不会放置真正的符号链接。
"C:\Program Files\Git\git-bash.exe" --cd-to-home
删除--cd-to-home
参数。 - userfuser