Bash LS 选项 ~ 优先组目录

Bash LS 选项 ~ 优先组目录

我在本地运行 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

相关内容