cd&&;ls函数不';在重新加载之前不能使用其他别名。bashrc?
我的.bash_别名中有以下代码:cd&&;ls函数不';在重新加载之前不能使用其他别名。bashrc?,bash,shell,alias,Bash,Shell,Alias,我的.bash_别名中有以下代码: c() { cd "$@" && ls -a ; } alias cdd="c ~/Downloads" alias r=". ~/.bashrc" 当我加载一个新终端时,cdd在我执行r命令之前不工作。但在这样做之后,它会按预期工作。为什么会这样 编辑:.bash\u别名来自于安装bash it。my.bashrc中包含以下代码: if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases f
c() { cd "$@" && ls -a ; }
alias cdd="c ~/Downloads"
alias r=". ~/.bashrc"
当我加载一个新终端时,cdd在我执行r命令之前不工作。但在这样做之后,它会按预期工作。为什么会这样
编辑:.bash\u别名来自于安装bash it。my.bashrc中包含以下代码:
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
我正在LinuxMint上使用Terminator终端。我在Unix堆栈交换上询问并找到了一个修复方法。“c”在启动时已映射为clear,因此在重新加载
.bash\u别名之前无法工作。将函数从“c”更改为“d”后,从启动开始,一切都正常。看起来bashrc
不包含在~/.bash_配置文件中。
@KaushikNayak:在这种情况下r
也应该不起作用。请尝试放置c(){cd$@&&ls-a;}
在.bashrc
@sjsam:哦,是的。我的badIf Terminator与其他Mac终端模拟器一样,它启动一个登录shell(因为模拟器本身不是从shell会话启动的,它不会从先前来源于.bash\u profile
的shell继承环境)。在.bash\u profile
中是否有任何源于.bashrc
或.bash\u别名的内容?那么这个问题应该是不可复制的,因为您的问题不包含任何内容,我们无法了解这个配置问题,而且这显然是一个跨站点的重复。