bash我们设置环境变量是在/etc/profile.d下面,今天常识了一下fish发现环境变量不生效,于是研究了一下,这里来记录一下几个解决方案。
默认交互不设置成fish
,在~/.bashrc
中添加一下代码,这种方式启动对原来的脚步不需要做改动
if [[ $(ps --no-header --pid=$PPID --format=cmd) != "fish" ]]
then
exec fish
fi
在这两个地方任意地方添加环境变量脚步。这种方式需要你迁移一下原本写在profile
里面的脚步
/etc/fish/conf.d/
~/.config/fish/conf.d/
在目录下创建想要对应的环境变量名字,比如我想配置go的环境变量就创建一个go.fish
,并写入以下内容:
set -x PATH /var/sdk/go/go1.17.6/bin $PATH
完成✅
参考:
https://developpaper.com/fish-set-environment-variables-fish-shell-related-instructions-record/
https://wiki.archlinux.org/title/Fish_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)