Некоторое время назад я обнаружил, что могу создавать пользовательские команды с расширением переменной PATH. К сожалению, он всегда сбрасывается, когда я закрываю терминал и открываю его снова.
Вы знаете, как решить эту проблему?
Потому что, когда я хочу запустить несколько сценариев с командами терминала, я не хочу расширять переменную PATH каждый раз, прежде чем ...
.bashrc
?.bashrc
файл следующим образом:gedit ~/.bashrc
и поместите туда все, что вы хотите (лучше внизу файла), например,PATH="~/my/cool/path/:$PATH"
и экспортируйте эту переменную: после строки, которую вы только что ввели, поместите,export PATH
сохраните файл, затем закройте свой терминал и снова откройте это и теперь ваши исполняемые файлы в~/my/cool/path
будут найдены.:)
Ответы:
Я понимаю, что у вас есть несколько исполняемых файлов в одной из ваших домашних папок, например, в,
~/bin
и вы хотите иметь возможность выполнять их, не всегда вводя полный путь~/bin/my_cool_executable
.Вы уже заметили, что вход
PATH=~/bin:$PATH
в ваш терминал заставил вещи работать ... но только до тех пор, пока вы не закроете терминал. Когда вы открываете новую, ваша прежняяPATH
переменная возвращается к исходному значению. Кстати, я думаю, вы знаете, как в любое время проверить значениеPATH
переменной: вот так:Как сделать ваши изменения постоянными, чтобы
PATH
при повторном открытии нового терминала вы не изменились ? Это очень просто, вам просто нужно отредактировать.bashrc
файл. Давайте использоватьgedit
редактор: в терминале введите:Это открывает
gedit
редактор. Прокрутите до конца файла и добавьте это:и сохраните файл и выйдите
gedit
. Затем закройте свой терминал и откройте новый. Теперь перед вами должна стоятьPATH
переменная,~/bin
чтобы ваши команды~/bin
были доступны без ввода полного пути. И вы знаете, как это проверитьecho "$PATH"
.Наслаждайтесь!
Предупреждение . Это считается плохой практикой и уязвимостью безопасности для помещения
.
вашейPATH
переменной.источник
/usr/local/bin
вместо того, чтобы возиться сPATH
переменной ... или/usr/local/sbin
если они должны быть доступны только пользователю root.