Когда я запускаю $PATH на своем терминале в Ubuntu 18.04.3, он отображает следующее :
/home/ubuntu/bin :/home/ubuntu/bin :/usr/local/sbin :/usr/local/bin :/usr/sbin :/usr/bin :/sbin :/bin :/usr/games :/usr/local/games :/snap/bin
Первая часть $PATH (/дома/убунту/бен
)появляется дважды. Почему?
Я пробовал :
grep PATH= ~/.{bash _профиль,профиль,bashrc}
и получил :
grep :/home/ubuntu/.bash _профиль :Нет такого файла или каталога /home/ubuntu/.profile :PATH="$HOME/bin :$PATH" /home/ubuntu/.profile :PATH="$HOME/.local/bin :$PATH" /home/ubuntu/.bashrc :export PATH="$HOME/bin :$PATH"
Удаление директивы export PATH="$HOME/bin:$PATH"
из файла /home/ubuntu/.bashrc
устранило проблему, поскольку директива PATH="$HOME/bin:$PATH"
уже покрыта директивой PATH="$HOME/bin:$PATH"
в файле /home/ubuntu/.profile
.
Я использую статью Стивена Коллиера bash_path_funcs
, описанную в Linux Journal еще в 2000 году, но ссылки больше не работают.
Эта ссылка работает сегодня (2020 -март -03 ):
http://web.archive.org/web/20061213023831/http://www.netspinner.co.uk/Resources.html
Функция addpath
добавляет запись в путь, только если ее там нет в первую очередь. delpath -n
удаляет все не -существующие каталоги из пути, а uniqpath
удаляет повторяющиеся записи.. ~ ~