Я зіткнувся з проблемою з Ubuntu. Псевдоніми Bash на зразок llне працюють, якщо я входжу у свою систему з SSH. Він прекрасно працює після написання bashяк команди в оболонці.
Це працювало раніше. У чому може бути проблема?
echo $SHELL
/bin/bash
Я зіткнувся з проблемою з Ubuntu. Псевдоніми Bash на зразок llне працюють, якщо я входжу у свою систему з SSH. Він прекрасно працює після написання bashяк команди в оболонці.
Це працювало раніше. У чому може бути проблема?
echo $SHELL
/bin/bash
Відповіді:
Існують різні набори файлів, у яких ви можете встановити ці псевдоніми залежно від того, був запущений Bash як оболонка для входу чи ні.
Якщо ви увійдете в свою машину (тобто введіть ім’я користувача та пароль), Bash завжди завантажиться /etc/profileта завантажить перший ~/.bash_profile, ~/.bash_loginі ~/.profileякщо він знайде один із них.
Якщо ви запускаєте новий термінал зі своєї машини, ви запускаєте не оболонку входу, а так звану інтерактивну оболонку. Це завантажує ~/.bashrc, але жоден з інших, зазначених вище, і тут також, можливо, буде зберігатися ваш псевдонім. *
Щоб завантажити вміст .bashrcпід час запуску оболонки для входу, слід додати наступне ~/.bash_profile:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
Повторно підключіться через SSH, і псевдонім від ~/.bashrcбуде доступний.
* Якщо його немає в цьому файлі, можуть бути інші bashrcфайли для всієї системи, наприклад, /etc/bash.bashrcна Ubuntu. Див.: Змінні середовища - Документація Ubuntu спільноти