我有以下文件来处理外壳配置:
#~/.bash_profile
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
和
#~/.bashrc
... configure shell
如果我使用code
从命令行打开VSCode,则每次添加集成shell的新实例时,都会加载.bashrc
。
但是,如果我通过VSCode图标打开VSCode,则只会加载我的.profile
。
如何确保我的.bashrc
已加载?
我尝试了terminal.integrated.shellArgs.osx
设置的各种设置,但没有任何运气。
答案 0 :(得分:3)
您还可以尝试以下操作:
1创建一个名为/ usr / local / bin / bash-login的文件并添加:
#!/bin/bash
bash -l
2运行:
chmod +x /usr/local/bin/bash-login
使其可执行。
3在您的VSC用户设置上添加
{ "terminal.integrated.shell.osx": "/usr/local/bin/bash-login" }
解决方案在https://github.com/Microsoft/vscode/issues/7263中进行了描述。
希望有帮助
答案 1 :(得分:2)
答案 2 :(得分:0)
只需将shell args添加到设置中。在Windows上使用git bash进行了测试,但是在Osx和Linux上应该可以正常使用。
在C:\Users\<username>\AppData\Roaming\Code\User\settings.json
中或您的Windows设置为:
添加以下之一:
"terminal.integrated.shellArgs.windows": ["-l"],
"terminal.integrated.shellArgs.linux": ["-l"],
"terminal.integrated.shellArgs.osx": ["-l"],
正好位于"terminal.integrated.shell.<platform>...
这将使用登录参数启动bash。
答案 3 :(得分:0)
另一个对我有用的可能解决方案。 settings.json文件(可以在文件>首选项>设置>功能>终端>集成>自动化外壳:Linux中访问)具有参数
"terminal.integrated.inheritEnv": false
默认设置为false。将其更改为true可以解决我的情况。
答案 4 :(得分:0)
"terminal.integrated.shellArgs.osx": ["-l"]
已弃用。
我个人想使用.bash_profile
,所以我用这个制作了一个.bashrc
:
if [ -f ~/.bashrc ]; then
source ~/.bash_profile
fi
然后我不得不完全重新启动计算机(只是重新启动 VS 代码不起作用)。
答案 5 :(得分:0)
VSCode 已弃用 "terminal.integrated.shellArgs.osx"
以支持使用配置文件。这对 osx 中的 bash 有用。如果您不希望 bash 成为您的默认配置文件,请省略第一行:
"terminal.integrated.defaultProfile.osx": "bash",
"terminal.integrated.profiles.osx": {
"bash": {
"path": "bash",
"args": ["-l"]
}
}