我在c:\Users\user\.bash_profile
和C:\Program Files\Git\etc\profile.d\aliases.sh
中创建了别名,但两个配置都被VSCode集成终端忽略了,该终端配置为使用git bash:
"terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",
如果我打开GitBash本身 - 别名可以正常工作
如何强制集成终端尊重配置?
答案 0 :(得分:9)
您可以尝试添加设置:
// The command line arguments to use when on the Windows terminal.
"terminal.integrated.shellArgs.windows": [
"--login", "-i"
],
"-i"
- 强制shell以交互方式运行。
"--login"
- 使这个shell表现得像登录直接调用一样。当Bash作为交互式登录shell或具有--login选项的非交互式shell调用时,它首先从文件/ etc / profile中读取并执行命令(如果该文件存在)。读取该文件后,它会按顺序查找〜/ .bash_profile,〜/ .bash_login和〜/ .profile,并从存在且可读的第一个命令中读取和执行命令。
当作为具有名称sh的交互式shell调用时,Bash查找变量ENV,如果已定义则展开其值,并使用展开的值作为要读取和执行的文件的名称。由于以sh调用的shell不会尝试从任何其他启动文件读取和执行命令,因此--rcfile选项无效。 使用名称sh调用的非交互式shell不会尝试读取任何其他启动文件。
您也可以使用.bashrc
文件代替.bash_profile
。
答案 1 :(得分:1)
我只是切换到我的根用户目录c:\Users\user
,然后运行source .bashrc
。这确实对我的机器有用,希望对您有所帮助。
答案 2 :(得分:1)
alias gotossh="cd /c/users/username/.ssh"
alias
在用户文件夹中可能没有要注意的.bashrc文件。 另外请记住要正确地写出路径,并且不要在等号之间留任何空格,例如alias =“ somecommand”
从2020年开始,无需添加shellArgs。
答案 3 :(得分:0)
使用“ --login”和“ -i” shell参数的解决方案对我不起作用。起作用的是在我的设置文件中使用bash“ -rcfile” shell参数,如下所示:
“ terminal.integrated.shellArgs.windows”:[ “ -rcfile”, “ c:\ Users \\。bash_profile”,],
...,其中