Вопрос или проблема
У меня проблема с алиасами bash в Kali linux. Давайте я расскажу всё с самого начала.
Я хочу настроить несколько команд, чтобы сэкономить время на их написание снова и снова. Поэтому я использовал
nano /.bash_aliases
и установил командную строку
alias up='sudo apt update && sudo apt full-upgrade'
затем я нажал Ctrl+V и нажал y, затем нажал Enter. Я закрыл терминал и открыл его снова. Когда я ввёл up
и нажал enter, он показывает:
up: command not found
Затем я искал решение и нашёл одно, которое говорило делать так.
gedit .bashrc
В файле .bashrc это написано без каких-либо ‘#’
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
Затем я открыл файл bash_aliases
с этой командой
gedit bash_aliases
И написал это и сохранил…
alias up='sudo apt update && sudo apt full-upgrade'
и закрыл терминал. В новом терминале та же ошибка возникает. Команда не найдена. Я также сделал следующее, чтобы решить эту проблему:
-
перезагрузил свой ПК
-
полностью выключил и снова включил ПК
-
Попробовал несколько случайных решений, таких как
source ~/.bashrc bash -i -c my_alias
Но я снова и снова находил ту же проблему. Вот скриншот на случай, если я забыл добавить какие-либо детали. Заранее благодарю.
объяснение
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
- это означает если есть файл с именем .bash_aliases, то источник этого файла.
.
в bash то же самое, что и source, например:
. .bash_aliases
илиsource .bash_aliases
, одно и то же, просто сокращение. ~/
это сокращение для вашего домашнего каталога, то есть/home/agent/
. Вы обращаетесь в корневом каталоге. Вот почему вы вошли как root в терминале. Когда вы обращаетесь к~/.bash_aliases
, ничего не происходит, потому что вы обращаетесь к файлу, в котором нет вашего алиаса up.
source /home/agent/.bash_aliases
решение
не делайте это как root, делайте это как ваш пользователь [agent]
a. удалите .bash_aliases из корневого /
каталога
sudo rm /.bash_aliases
b. откройте с помощью gedit ваш файл .bash_aliases в ДОМШНЕМ КАТАЛОГЕ и обратите внимание на .
перед .bash_aliases
gedit /home/agent/.bash_aliases` #и добавьте ваш алиас
alias up='sudo apt update && sudo apt full-upgrade'
c. источник файл .bashrc и это автоматически источник .bash_aliases
(помните if [-f ~/.bash_aliases]; then
в начале?)
source /home/agent/.bashrc
d. вы можете проверить ваши алиасы с помощью команды alias -p
.
Ответ или решение
Почему команды псевдонимов Bash не работают в Kali Linux?
Введение
Проблема с неработающими псевдонимами в Bash может возникнуть по различным причинам, особенно в системах на базе Linux, таких как Kali. Ваша ситуация, изложенная выше, помогает понять основные ошибки, которые могут привести к тому, что псевдонимы не будут корректно работать. В этой статье мы разберем шаги, которые необходимо предпринять, чтобы решить данную проблему.
Причины проблемы
-
Неправильное расположение файла
.bash_aliases
:- Вы создали файл
.bash_aliases
в корневой директории/
, а не в домашней директории вашего пользователя. Bash ожидает, что файл будет находиться в домашней директории пользователя (например,/home/agent/.bash_aliases
).
- Вы создали файл
-
Неактивированное выполнение
.bashrc
:- В вашем файле
.bashrc
присутствует проверка на существование файла.bash_aliases
. Если файл не найден (например, потому что вы его создали не в той директории), тогда псевдонимы не будут загружаться.
- В вашем файле
-
Проблемы с сессией:
- После изменения файлов конфигурации Bash может потребоваться перезагрузка терминала или использование команды
source
, чтобы изменения вступили в силу.
- После изменения файлов конфигурации Bash может потребоваться перезагрузка терминала или использование команды
Решение проблемы
Чтобы исправить ситуацию с неработающими псевдонимами, выполните следующие шаги:
Шаг 1: Удалите неправильный файл
Удалите файл .bash_aliases
, который был создан в корневой директории. Это можно сделать с помощью следующей команды:
sudo rm /.bash_aliases
Шаг 2: Создайте правильный файл в домашней директории
Теперь откройте файл .bash_aliases
в домашней директории вашего пользователя. Выполните:
gedit /home/agent/.bash_aliases
Добавьте в файл следующий псевдоним:
alias up='sudo apt update && sudo apt full-upgrade'
Сохраните изменения и закройте редактор.
Шаг 3: Активируйте псевдонимы
Теперь выполните следующую команду, чтобы обновить текущую сессию Bash и убедиться, что изменения вступили в силу:
source ~/.bashrc
Проверка псевдонимов
Для того чтобы удостовериться, что ваши псевдонимы работают, выполните команду:
alias -p
Это покажет список всех доступных псевдонимов в текущей сессии.
Заключение
Следуя вышеприведенным шагам, вы сможете устранить проблемы с неработающими псевдонимами в Bash на Kali Linux. Важно помнить, что файлы конфигурации Bash, такие как .bashrc
и .bash_aliases
, должны находиться в домашней директории пользователя, чтобы корректно функционировать. Надеемся, что данная информация будет полезна для вас и поможет наладить работу с командной строкой в будущем.