Как создать постоянный «псевдоним»?

Если вы создаете псевдоним, например:

alias cls="clear" 

Он существует до тех пор, пока вы не закончите сеанс terminall. Когда вы запускаете новое окно терминала, псевдоним больше не существует. Как создать «постоянный» псевдоним, который существует на каждом сеансе терминала?

Вы можете поместить такие псевдонимы в файл ~/.bash_aliases .

Этот файл загружается с помощью ~/.bashrc . На Ubuntu 10.04 следующие строки должны быть раскомментированы, чтобы разрешить использование ~/.bash_aliases . На Ubuntu 11.04 и более поздних версиях он уже включен:

 if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi 

Команда aliased будет доступна на любом новом терминале. Чтобы команда aliased на любом существующем терминале нуждалась в источнике ~/.bashrc с этого терминала,

 source ~/.bashrc 

Добавьте свою строку в ~/.bashrc или в ~/.profile / ~/.bash_profile для удаленного входа в систему.

Если вы хотите, чтобы команда выполнялась для всех пользователей, поместите ее в /etc/bash.bashrc .

Изменить: в последних версиях Ubuntu ~/.bashrc автоматически ~/.bash_aliases , поэтому перманентные псевдонимы лучше всего помещать в этот файл.

Вы можете добавить функцию ниже в ваш .bashrc-файл.

 function permalias () { alias "$*"; echo alias "$*" >> ~/.bash_aliases } 

Затем откройте новый терминал или запустите source ~/.bashrc в вашем текущем терминале. Теперь вы можете создавать постоянные псевдонимы, используя команду permalias , например permalias cls=clear .

Придерживайтесь этой команды в последней строке вашего ~/.bash_profile

См. http://www.joshstaiger.org/archives/2005/07/bash_profile_vs.html для разницы между ~/.bash_profile и ~/.bashrc

~/.bashrc запускается каждый раз, когда вы открываете новый терминал, тогда как ~/.bash_profile нет. ~/.bashrc содержит следующее ~/.bash_aliases файл ~/.bash_aliases . Это было бы самым подходящим местом для добавления вашего псевдонима.

 # Alias definitions. # You may want to put all your additions into a separate file like # ~/.bash_aliases, instead of adding them here directly. # See /usr/share/doc/bash-doc/examples in the bash-doc package. if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi 
 reset echo "Enter alias like this:" echo "alias dir='ls'" read var echo "$var" >> /home/$user/.bashrc && . ~/.bashrc cat .bashrc