Как добавить каталог в $PATH
в Ubuntu и сделать изменения постоянными?
Путь, заданный в .bash_profile
, будет установлен только в оболочке входа в систему bash (bash -l
).
Если вы поместите свой путь в .profile
, он будет доступен для всей сессии рабочего стола. Это означает, что даже metacity будет его использовать.
Например, ~/.profile
:
if [ -d "$HOME/bin" ] ; then
PATH="$PATH:$HOME/bin"
fi
Кстати, вы можете проверить переменную PATH процесса, посмотрев его окружение в /proc/[pid]/environ
(замените [pid] на номер из ps axf
). Например, используйте grep -z "^PATH" /proc/[pid]/environ
.
bash
как оболочка для входа в систему не разбирает .profile
, если существует либо .bash_profile
, либо .bash_login
. Из man bash
:
он ищет ~/.bash_profile, ~/.bash_login, и ~/.profile, в этом порядке, и читает и выполняет команды из первого, который существует и доступен для чтения.
Смотрите ответы ниже для получения информации о .pam_environment
, или .bashrc
для интерактивных нелогиновых оболочек, или установите значение глобально для всех пользователей, поместив скрипт в /etc/profile.d/
или используйте /etc/X11/Xsession.d/
для влияния на сеанс менеджеров отображения.
Отредактируйте .bashrc
в своем домашнем каталоге и добавьте следующую строку:
export PATH="/path/to/dir:$PATH"
Для того чтобы изменения вступили в силу, вам потребуется исходный текст вашего .bashrc
или выход/вход в систему (или перезапуск терминала). Чтобы создать источник .bashrc
, просто введите
$ source ~/.bashrc
Рекомендуется для определения постоянного, системы переменные среды, применимые ко всем пользователям в:
/etc/environment
(где путь по умолчанию определяются)
Все это будет работать на столе или консоли, гном-терминал или терминал, в любую погоду ;)
gksudo команду Gedit /и т. д./среды
(или откройте файл, используя судо
в вашем любимом текстовом редакторе)
В силу изменений, выполните . в /etc/окружающей среды
. Поскольку этот файл является простой скрипт, он будет работать и назначить новый путь к переменной PATH
среды. Для проверки выполнения ОКР и увидеть "путь" значение в списке.
Связанные:
Я думаю, что канонический путь в Ubuntu:
/и т. д./профиль.д/
судо VI /etc/profile.d/SCRIPT_NAME.sh
экспорт путь="и YOUR_PATH_WITHOUT_TRAILING_SLASH:$путь и"
судо команду chmod а+х /etc/profile.d/SCRIPT_NAME.sh
Для полных нубов (как я), которые являются более удобными с графическим интерфейсом:
домашнем
.Путь=то" прокрутите вниз и добавить в$Path:/мой/путь/фу" и
.Постоянные переменные среды, в частности только пользователи. Я очень рекомендую официальной документации Ubuntu.
https://help.ubuntu.com/community/EnvironmentVariables
Ссылаясь на вышеуказанные документы, я настроить мой Андроид путь-инструменты SDK по:
путь по умолчанию=${путь}:~/андроид-СДК-Линукс/инструментов
.Положить, что линия в ~/.файл bashrc
.
Она становится источником, когда вы открываете терминал
Редактировать: основываясь на комментариях ниже, для более общей постановке, которая будет распространяться на все оболочки (в том числе, когда вы нажмите <и>Альт</КБД и GT;-<и>Ф2</роз> В единстве), добавьте следующую строку в ваш~/.файл профиля. Наверное,'т делать, но, так как путь будет в два раза добавлен к среде свой "путь", если вы открываете терминал.
Чтобы установить его в систему, добавьте путь экспорта строке =/путь/вы'вновь/добавил:$путь
к /и т. д./профиль
.
Чтобы добавить папку только для вошедшего в систему пользователя, добавьте ту же строку в ~/.файл
.
Добавление его в .bashrc будет работать, но я думаю, что более традиционный способ установки переменных пути - в .bash_profile путем добавления следующих строк.
PATH=$PATH:/my/path/foo
export PATH
Согласно этой теме, похоже, что поведение Ubuntu'немного отличается от RedHat и клонов.
В терминале, кд
к the_directory_you_want_to_add_in_the_path
echo "export PATH=$(pwd):\${PATH}" >> ~/.bashrc
Это было'т моя идея. Я нашел этот путь к путь экспорта в этом блог.
sudo vi /etc/profile.d/SCRIPT_NAME.sh
добавить туда
export PATH=YOUR_PATH_WITHOUT_TRAILING_SLASH:$PATH
Всякий раз, когда я на "установить" мой папка скриптов на bash, я следовать образцу теста на `$папке home/бин, что'ов в большинстве .профиль файлов в последних версиях Ubuntu. Я установил тест, который выглядит как
if [ -d "/usr/scripts" ]; then
PATH="/usr/scripts:$PATH"
fi
Он работает так же, около 100% времени, и оставляет меня свободным изменить его в GUI текстовый редактор, самый быстрый и"заменить всех" если я когда-нибудь решите переехать /скрипты где-то ближе к моему
$домашнюю папку. Я не'т сделали это в 6 Ubuntu устанавливает, но там'ы "и всегда завтра." и з
<Б>BZT</Б>
Рекомендуемый способ изменить свой "путь" с файл/etc/среды
Пример выходных данных из файла /etc/среды
:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
Например, чтобы добавить новый путь /Home/имя_пользователя/mydir
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/username/mydir"
Затем перезагрузите ваш компьютер.
общесистемные переменные среды
подходящий файл для настройки переменных среды, которые влияют на систему в целом (а не только конкретного пользователя) является /etc/среды. В качестве альтернативы можно создать файл для назначения в /etc/профиль.каталог д'.
/и т. д./среда
этот файл специально предназначен для общесистемные параметры переменных среды. Это не скрипт, а скорее состоит из выражения присваивания, по одному в строке.
Примечание: переменная расширение не работает в /etc/среды.
Более подробную информацию можно найти здесь: Переменныесреды
Откройте терминал, введите команду gedit .профиль и вставить следующее:
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$PATH:$HOME/bin"
fi
#the following line add Bin where you dont have a Bin folder on your $HOME
PATH="$PATH:/home/mongo/Documents/mongodb-linux-i686-2.2.2/bin"
Закрыть и открыть терминал, она должна работать.
Даже если скрипты не использовать это,
в любом из случаев, что кто-то хочет добавить путь (например, $дома/Бин
) в переменной среды PATH, следует использовать
PATH="${PATH:+${PATH}:}$HOME/bin"
для добавления (вместо Path=" по пути$Path:$Home/в бин"
в),
и
PATH="$HOME/bin${PATH:+:${PATH}}"
для добавления (вместо Path=" в папке$home/ОГРН:$путь"
в).
Это позволяет избежать ложных ведущая и ведомая толстой кишки, когда путь
- Это изначально пустая, что может иметь нежелательные последствия.
См., например, https://unix.stackexchange.com/questions/162891/append-to-path-like-variable-without-creating-leading-colon-if-unset
Для Ubuntu редактирование `~/.bashrc и и добавьте следующую строку.
. ~/.файл
Затем измените ваш .файл как вам нужно.....