tmux + 鱼壳;conf 来源两次

Tom*_*mmy 3 fish tmux

当我开始时tmux,我的~/.config/fish/config.fish似乎来源。这意味着set PATH foo $PATH我的任何语句config都会再次执行,这会导致我的 PATH 变量中有重复的条目。这并不激烈,但对 ECHO 路径来说很烦人。当它这么长

我怎样才能防止这个问题?

编辑:我的 tmux 文件中唯一与鱼相关的内容是

#fix vim set -g default-shell $SHELL set -g default-command "reattach-to-user-namespace -l ${SHELL}" set -g default-command 'reattach-to-user-namespace $SHELL --login'

Kur*_*der 5

〜/的.config /鱼/ config.fish配置文件是由每一个新的鱼例如读取。有几种方法可以实现您的要求。一种选择是始终PATH从头开始设置。也就是说,不要通过附加或添加到现有路径来修改现有路径,而是将其设置为您想要的给定机器。类似的东西

set -gx PATH $HOME/bin /usr/local/bin /usr/bin/ /bin
test -d /opt/X11/bin
and set PATH $PATH /opt/X11/bin
Run Code Online (Sandbox Code Playgroud)

另一种选择是仅当目录不在路径中时才添加目录:

contains /usr/local/bin $PATH
or set PATH /usr/local/bin $PATH
Run Code Online (Sandbox Code Playgroud)

或者仅在不在 tmux 会话中时才进行修改:

if not set -q TMUX
    set PATH /argle/bargle $PATH
end
Run Code Online (Sandbox Code Playgroud)