web-dev-qa-db-ja.com

Bash LSオプション〜グループディレクトリファースト

ローカルで私はDebian安定版を実行しています〜bash -version 4.1.5.。
リモートでサーバーがCentos5-8.el5を実行していますbash -version 3.2.25.。

Lsオプション--group-directories-firstのエイリアス「ll」を含む.bash_aliasファイルが両方のディストリビューションにあります...しかし、このオプションはリモートで失敗します...

##############################################################                                                    
#                       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バージョンの違いですか?

3
Eddie B

.bash_aliasファイルは非標準であり、自動的にロードされるファイルの1つに明示的にロードする必要があります。 .bashrcまたは.bash_profile。次のスクリプトスニペットを使用します。

[[ -f ~/.bash_alias ]] && . .bash_alias

正しいものに.bash_aliasが含まれていることを確認してください。ローカルのLinux端末は通常ログインシェルを開始しないため、.bashrcを使用しますが、リモートシステムでSSHを介して、bashは.bash_profileのみを自動的にロードします。 man bashのセクション[〜#〜] invocation [〜#〜]を参照してください。

3
Daniel Beck