如何像在 .bashrc 中一样向 fish 添加导出功能?

如何像在 .bashrc 中一样向 fish 添加导出功能?

我只是希望能够在一些鱼配置文件(不知道哪个/在哪里)中添加与此相同的功能:

export PERL5LIB=/home/iaco/workspace/perl:/home/iaco/devtools

这行被添加到 .bashrc 文件中,每次我打开终端时它都能导出变量。

鱼有类似的东西吗?我知道我可以使用“set”命令导出鱼中的变量,但我想修改一个文件(不知道是哪一个)以便每次打开鱼终端时自动添加这些变量。

答案1

您可以将用户特定的 fish 配置(包括 set 指令)放入其中~/.config/fish/config.fish。内容应该大致如下

set -x PERL5LIB /home/iaco/workspace/perl:/home/iaco/devtools

更多信息可以在这里找到文档

答案2

使用 fish 2.0.0 中引入的通用变量。-x表示导出,-U表示为每个 fish 会话声明。您还可以使用长选项--export--universal

set -xU PERL5LIB /home/iaco/workspace/perl:/home/iaco/devtools

请注意,PATH变量有点特殊。虽然PATH可以普遍更改,但这会影响您当前的 PATH 变量(如果操作系统引入了额外的路径,这可能会有点问题)。对于PATH变量,请改用fish_user_paths变量(仅添加路径)。变量是一个数组,这意味着您不必输入:字符。

set -U fish_user_paths /home/iaco/workspace/perl/share/bin /home/iaco/bin $fish_user_paths

相关内容