我在本地运行 Debian 稳定版 ~bash-版本 4.1.5...
我的远程服务器正在运行 Centos 5-8.el5bash -版本 3.2.25...
我在两个发行版上都有一个 .bash_alias 文件,其中包含 ls 选项 --group-directories-first 的别名“ll”...但是,此选项在远程失败...
##############################################################
# BASH_ALIASES
##############################################################
#-------------------------------------------------------------
# The 'ls' family
#-------------------------------------------------------------
alias ll="ls -l --group-directories-first"
alias ls='ls -hF --color' # add colors for filetype recognition
alias la='ls -Al' # show hidden files
alias lx='ls -lXB' # sort by extension
alias lk='ls -lSr' # sort by size, biggest last
alias lc='ls -ltcr' # sort by and show change time, most recent last
alias lu='ls -ltur' # sort by and show access time, most recent last
alias lt='ls -ltr' # sort by date, most recent last
alias lm='ls -al |more' # pipe through 'more'
alias lr='ls -lR' # recursive ls
alias tree='tree -Csu' # nice alternative to 'recursive ls'
# ------------------------------------------------------------
# Play nicely ...
# ------------------------------------------------------------
alias rm='rm -i'
alias rmdir='rmdir -p'
alias cp='cp -i'
alias mv='mv -i'
alias mkdir='mkdir -p'
这仅仅是 Bash 版本的差异吗?
答案1
该.bash_alias
文件是非标准的,必须在其中一个自动加载的文件中明确加载,例如.bashrc
或.bash_profile
。使用以下脚本片段:
[[ -f ~/.bash_alias ]] && . .bash_alias
确保你包含了.bash_alias
正确的内容;本地 Linux 终端通常不会启动登录 shell,因此你需要使用.bashrc
,但通过远程系统上的 SSH,bash 将自动加载.bash_profile
。请参阅调用在man bash
。