Как сделать так, чтобы псевдоним длился вечно? - PullRequest
0 голосов
/ 06 августа 2020

Я хочу создать псевдоним python = "python3". Я делаю это, используя nano ~ / .bash_profile, а затем набираю: alias python = "python3" и сохраняю. Затем я пишу: source ~ / .bash_profile, чтобы перезаписать изменения. Но этот псевдоним действует только для сеанса терминала, в котором я нахожусь. Когда я запускаю новый сеанс терминала, я должен написать source ~ / .bash_profile для псевдонима python = "python3", чтобы он стал go. .

Ответы [ 4 ]

0 голосов
/ 06 августа 2020

~/.bash_profile может быть получен только интерактивными оболочками login , как вам сообщит страница руководства bash. Если вы хотите, чтобы он был доступен также в интерактивных оболочках без входа в систему , я предлагаю вам поместить определения псевдонимов в отдельный файл (скажем: ~/.bash_interactive) и получить этот файл как из .bash_profile, так и из .bashrc.

0 голосов
/ 06 августа 2020

Чтобы сделать псевдонимы постоянными, вы должны установить их в файле, который читается при запуске терминала. т.е. попробуйте добавить свою строку alias python=python3 в ~/.bashrc или в ~/.profile или ~/.bash_profile для удаленного входа в систему. Если вы хотите, чтобы команда выполнялась для всех пользователей, поместите ее в /etc/bash.bashrc. Как правило, псевдонимы могут храниться в файле ~/.bash_aliases, и этот файл загружается ~/.bashrc. Не забудьте раскомментировать следующие строки в ~/.bashrc, чтобы разрешить использование ~/.bash_aliases, если вы работаете в более старых версиях Ubuntu. В Ubuntu 11.04 и новее он уже включен:

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

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

source ~/.bashrc
0 голосов
/ 06 августа 2020

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

source ~/.bashrc
0 голосов
/ 06 августа 2020

Есть ли в вашем файле ~ / .bashr c такая команда, как

source ~/.bash_profile

или

. ~/.bash_profile

?

Если нет, у вас есть чтобы добавить его

В любом случае, обычная практика - создать ~ / .bash_aliases для использования псевдонимов, а затем передать его в ~ / .bashr c, например:

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