3

Локально я использую стабильную версию Debian ~ bash -version 4.1.5 ...
Удаленно мой сервер работает под управлением Centos 5-8.el5 bash -version 3.2.25 ...

У меня есть файл .bash_alias в обоих дистрибутивах, содержащий псевдоним 'll' для опции ls --group-directoryies-first ... Тем не менее, эта опция не работает удаленно ...

##############################################################                                                    
#                       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 ответ1

3

Файл .bash_alias является нестандартным и должен быть явно загружен в один из автоматически загружаемых файлов, например .bashrc или .bash_profile . Используйте следующий фрагмент скрипта:

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

Убедитесь, что вы .bash_alias в правильный файл ; локальные терминалы Linux обычно не запускают оболочки входа в систему, поэтому вы должны использовать .bashrc , но через SSH в удаленной системе bash будет автоматически загружать только .bash_profile . Смотрите раздел INVOCATION в man bash .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .