使用tmux丢失了我所有的bash别名,我怎么能让他们留下来?

时间:2013-04-25 20:03:29

标签: bash rvm alias tmux

我的.bashrc

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

包括运行我的.bash_aliases并给我一些我定义的别名。

但是,如果我尝试使用TMUX(使用tmux调用),我现在唯一的别名就是:

$ alias 返回#将显示....

$ alias rvm-restart='rvm_reload_flag=1 source '\''/home/durrantm/.rvm/scripts/rvm'\'''

我如何使用tmux并仍然可以使用所有别名。

我在Ubuntu 12.04上

我的.bashrc文件的结尾如下所示:

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

# Automatic cd'ing
shopt -s autocd

if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
    . /etc/bash_completion
fi

PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM

export EDITOR=vim

git config --global --add color.ui true

3 个答案:

答案 0 :(得分:17)

tmux将您的shell作为登录shell调用。登录shell不会处理.bashrc,而是使用.bash_profile代替。

您只需.bash_profile阅读.bashrc

即可
echo 'source ~/.bashrc' >> ~/.bash_profile

答案 1 :(得分:1)

一旦“启动”窗格,最好在tmux中运行bash。 btw登录名和交互式shell有所不同是有原因的。 我宁愿寻找在每个新创建的窗格中运行命令的方法。

答案 2 :(得分:0)

您可以将以下设置添加到 ~/.tmux.conf (s. answer):

set-option -g default-command $SHELL