Вопрос Как создать постоянный «псевдоним»? [Дубликат]


На этот вопрос уже есть ответ:

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

alias cls="clear"

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


165
2017-08-06 15:14


происхождения


Что касается этого конкретного примера, ^ L (Control-l) также очищает экран. - loevborg


ответы:


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

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

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

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

source ~/.bashrc

186
2017-10-06 19:45



+1 Я рекомендую это для редактирования ~ / .bashrc. Несмотря на то, что ~ / .bashrc действительно полезен для других целей, у него слишком много элементов, которые могут отбросить пользователя, который не знаком с особенностями оболочек Linux. - ændrük
пример: echo "cls='clear'" >> ~/.bash_aliases && source ~/.bash_aliases - hobs
@ ændrük Я действительно нахожу, что толкование конфигурационных файлов оболочки запутывает. На мой взгляд, это проще, если есть один довольно длинный файл конфигурации со всеми настройками. - haziz
@hobs это должно быть: echo "alias cls='clear'" >> ~/.bash_aliases && source ~/.bash_aliases - Amir Ali Akbari
gracias для коррекции - hobs


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

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

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


35
2017-08-06 15:26



Спасибо, он работал, когда я писал в ~ / .bachrc P.S. В моем домашнем каталоге нет файлов ~ / .profiles. - Zango
.profile может быть .bash_profile сейчас - txwikinger
Если этот файл не существует, вы можете просто создать его. - Ryan Thompson
Спасибо, мне было интересно, какая разница между этими двумя. (bashrc и bash_profile) - emf
joshstaiger.org/archives/2005/07/bash_profile_vs.html для разницы между ~ / .bash_profile и ~ / .bashrc - Indrajeet Gour


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

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

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


18
2017-11-17 21:22



Примечание по использованию: когда я набрал mkalias smount='sudo mount' кавычки не были перекликаемы, поэтому мое решение было mkalias "smount='sudo mount'" Если вы накладываете команду на 2+ слова, вам это тоже понадобится. - TecBrat


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


4
2017-08-06 15:17



Почему нет ~/.bashrc? - mac9416
bashrc предпочтительнее, я понимаю, хотя и неясно, почему - emf


Видеть http://www.joshstaiger.org/archives/2005/07/bash_profile_vs.html за разницу между ~/.bash_profile а также ~/.bashrc

~/.bashrc запускается каждый раз, когда вы открываете новый терминал, тогда как ~/.bash_profile нет. ~/.bashrc содержит следующее, которое включает ~/.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

4
2017-07-03 11:00





reset
echo "Enter alias like this:"
echo "alias dir='ls'"
read var
echo "$var" >> /home/$user/.bashrc && . ~/.bashrc
cat .bashrc

-3
2018-04-01 21:18



Пожалуйста, объясните, что ваш ответ. Просто показывать кучу кода почти никогда не бывает хорошо. ЕСЛИ вы это сделаете, пингуйте с комментарием к @DavidFoerster, и я проголосую за ваш ответ. - David Foerster