Как просматривать и обновлять переменную PATH
После установки программы запустить ее можно только в том же каталоге, в котором хранится программа. Запустить программу из любого каталога вы можете с помощью переменной среды PATH.
Переменная PATH содержит список каталогов, которые система проверяет перед запуском команды. Обновив переменную PATH, вы сможете запускать любые исполняемые файлы, которые находятся в перечисленных в PATH каталогах, из любого каталога, не вводя абсолютный путь к файлу.
Например, для запуска Python вместо следующего:
Можно ввести следующую команду, поскольку каталог /usr/bin включен в переменную PATH:
Каталоги перечислены в порядке приоритета, поэтому первыми упоминаются те, которые нужно проверять первыми.
В этом руководстве вы научитесь проверять переменную PATH и обновлять ее значение.
1: Просмотр переменной PATH
Вы можете просмотреть переменную PATH с помощью следующей команды:
По умолчанию переменная PATH может выглядеть примерно так (пути к файлам могут немного отличаться в зависимости от вашей системы):
Некоторые каталоги упоминаются по умолчанию, а каждый каталог в PATH отделяется двоеточием (:). Система проверяет эти каталоги слева направо.
Если каталог, в котором установлена необходимая программа, не перечислен в переменной PATH, вы можете добавить его самостоятельно.
2: Добавление каталога в переменную среды PATH
Добавить каталог в PATH можно двумя способами – поместив его в начале или в конце пути.
Помещая каталог (например, /the/file/path) в начало PATH, вы говорите системе, что его нужно проверять первым:
Каталог, добавленный в конец PATH, будет проверен после всех остальных каталогов:
Чтобы поместить в PATH несколько каталогов одновременно, добавьте двоеточие между ними:
После выполнения команды export можно просмотреть переменную PATH, чтобы отследить изменения:
export PATH=$PATH:/the/file/path
echo $PATH
Вы получите такой вывод:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games:/the/file/path
Этот метод будет работать только для текущего сеанса оболочки. Как только вы выйдете из текущего сеанса и запустите новый, переменная PATH будет сброшена до стандартного значения, а добавленный в нее каталог будет удален. Чтобы значение PATH сохранялось независимо от сеанса оболочки, оно должно храниться в файле.
3: Как навсегда добавить каталог в переменную PATH
На этом этапе мы покажем, как навсегда добавить каталог в конфигурационный файл оболочки (~/.bashrc, если вы используете оболочку bash, или ~/.zshrc, если вы используете zsh). В этом руководстве мы работаем с файлом ~/.bashrc.
Сначала откройте файл:
В файле ~/.bashrc хранятся данные, которые не нужно изменять. В конец файла добавьте команду export с новым каталогом:
. Adding paths to your PATH export PATH=$PATH:the/file/path
Напоминаем, что каталоги перечисляются в PATH по приоритетности.
Сохраните и закройте файл. Изменения в переменную PATH будут внесены после запуска нового сеанса оболочки. Чтобы применить изменения к текущему сеансу, используйте команду source:
Позже вы можете добавить новые каталоги. Для этого снова откройте этот файл и добавьте каталоги в существующую команду export.
Заключение
Переменная среды PATH является важным аспектом работы командной строки. Она позволяет запускать программы, такие как echo и python3, из любого каталога, не вводя полный путь к программе. Здесь вы узнали, как редактировать ее значение и сохранять его на постоянной основе.
Как добавить путь в переменную $PATH?
А точно нужно добавлять? Если все установили правильно, то должно работать. Но если хочется, то кто мешает открыть файл ~/.bashrc и добавить где то в конец пару строк:
PATH=$PATH:/usr/gcc/4.4/bin export PATH
Отслеживать
371 1 1 золотой знак 5 5 серебряных знаков 13 13 бронзовых знаков
ответ дан 27 авг 2012 в 9:12
112k 6 6 золотых знаков 93 93 серебряных знака 159 159 бронзовых знаков
@KoVadim, а где находится файл bashrc?
27 авг 2012 в 9:15
я же написал — ~/.bashrc . Если в таком формате не понятно, то говорю по простому — это в домашнем каталоге. У Вас это наверно /home/ivan31 . Обратите внимание на точку в начале файла!
27 авг 2012 в 9:17
@KoVadim, в каталоге home пусто.
27 авг 2012 в 10:14
может быть Вы под рутом работаете? тогда пробуйте /root/.bashrc А лучше, скажите, какая именно версия какого именно линукса у Вас.
27 авг 2012 в 10:17
@KoVadim, Nexenta illumos.
27 авг 2012 в 10:21
- переменные
- linux
-
Важное на Мете
Связанные
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Переменная PATH в Linux
Когда вы запускаете программу из терминала или скрипта, то обычно пишете только имя файла программы. Однако, ОС Linux спроектирована так, что исполняемые и связанные с ними файлы программ распределяются по различным специализированным каталогам. Например, библиотеки устанавливаются в /lib или /usr/lib, конфигурационные файлы в /etc, а исполняемые файлы в /sbin/, /usr/bin или /bin.
Таких местоположений несколько. Откуда операционная система знает где искать требуемую программу или её компонент? Всё просто — для этого используется переменная PATH. Эта переменная позволяет существенно сократить длину набираемых команд в терминале или в скрипте, освобождая от необходимости каждый раз указывать полные пути к требуемым файлам. В этой статье мы разберёмся зачем нужна переменная PATH Linux, а также как добавить к её значению имена своих пользовательских каталогов.
Переменная PATH в Linux
Для того, чтобы посмотреть содержимое переменной PATH в Linux, выполните в терминале команду:
На экране появится перечень папок, разделённых двоеточием. Алгоритм поиска пути к требуемой программе при её запуске довольно прост. Сначала ОС ищет исполняемый файл с заданным именем в текущей папке. Если находит, запускает на выполнение, если нет, проверяет каталоги, перечисленные в переменной PATH, в установленном там порядке. Таким образом, добавив свои папки к содержимому этой переменной, вы добавляете новые места размещения исполняемых и связанных с ними файлов.
Для того, чтобы добавить новый путь к переменной PATH, можно воспользоваться командой export. Например, давайте добавим к значению переменной PATH папку/opt/local/bin. Для того, чтобы не перезаписать имеющееся значение переменной PATH новым, нужно именно добавить (дописать) это новое значение к уже имеющемуся, не забыв о разделителе-двоеточии:
Теперь мы можем убедиться, что в переменной PATH содержится также и имя этой, добавленной нами, папки:
Вы уже знаете как в Linux добавить имя требуемой папки в переменную PATH, но есть одна проблема — после перезагрузки компьютера или открытия нового сеанса терминала все изменения пропадут, ваша переменная PATH будет иметь то же значение, что и раньше. Для того, чтобы этого не произошло, нужно закрепить новое текущее значение переменной PATH в конфигурационном системном файле.
В ОС Ubuntu значение переменной PATH содержится в файле /etc/environment, в некоторых других дистрибутивах её также можно найти и в файле /etc/profile. Вы можете открыть файл /etc/environment и вручную дописать туда нужное значение:
sudo vi /etc/environment
Можно поступить и иначе. Содержимое файла .bashrc выполняется при каждом запуске оболочки Bash. Если добавить в конец файла команду export, то для каждой загружаемой оболочки будет автоматически выполняться добавление имени требуемой папки в переменную PATH, но только для текущего пользователя:
Выводы
В этой статье мы рассмотрели вопрос о том, зачем нужна переменная окружения PATH в Linux и как добавлять к её значению новые пути поиска исполняемых и связанных с ними файлов. Как видите, всё делается достаточно просто. Таким образом вы можете добавить столько папок для поиска и хранения исполняемых файлов, сколько вам требуется.
Работа с переменной PATH на Linux. Это совсем не сложно.
Работа с переменной PATH в Linux очень проста, она определяет, где исполняемые программы могут быть доступны через ввод имени программы, и вам не нужен полный путь, такой как /usr/local/bin/myprog.
Linux будет проверять наличие исполняемых программ в окружении PATH только в том случае, если указан полный или относительный путь к программе.
В целом, поиск в текущем каталоге не производится, если он не включен в PATH.
Можно включить наш текущий каталог в PATH, добавив каталог в переменную PATH.
Это показано в следующем примере:
$ export PATH=$PATH:.
Это полезно для временной проверки, когда вы хотите запустить программу из текущего каталога.
Эта команда создаст папку $HOME/bin только в том случае, если она еще не существует.
test -d $HOME/bin || mkdir $HOME/bin
Очень полезна при тестировании исполняемых файлов.
Ниже приведен пример полной переменной PATH на сервере Linux.
~$ echo $PATH
/home/jason/anaconda3/bin:/home/jason/anaconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Это довольно сложно, но все же имеет смысл.
Каждый каталог отделяется символом двоеточия, и это облегчает редактирование.
Ниже приведено утверждение, которое можно использовать в вашем файле ~/.bashrc.
export PATH="/home/jason/anaconda3/bin:$PATH"
Это добавит папку /home/jason/anaconda3/bin в текущий PATH.
Это очень простое в использовании и быстрое решение.
- Как добавить путь к каталогу в переменную $PATH
- ️ Как создать логические тома LVM на Linux
- ⚙️ Как выполнить grep для поиска текста в PowerShell
- Как установить порядок монтирования файловых систем в современных дистрибутивах Linux
- ️ Как смонтировать каталог хоста внутри контейнера LXD
itisgood
previous post
Перемещение вверх или вниз Vim
Как узнать дату установки ОС Linux?
You may also like
Различия между пакетными менеджерами YUM и DNF
gcc и g++: В чем разница?
Как играть в классическую игру “Змейка” в.
Удаление пустых каталогов в командной строке с.
Сравнение команд Printf и Echo на Linux
Что означает -z на Bash
Примеры команд size на Linux
Linux_Logo – вывод ASCII логотипа Linux с.
Параметры конфигурационного файла Apt /etc/apt/apt.conf
Разница между выключением, перезагрузкой и остановкой Linux
Leave a Comment Cancel Reply
• Свежие записи
- Механизмы и мотивации в накрутке голосований в опросах Телеграм
- Smart Ear — проект развития компьютерного слуха
- Как автоматизировать бухучет: обзор ПО для компаний разного масштаба
- Лучшие каналы продвижения товаров и привлечения клиентов в 2023 году: экспертные рекомендации
- Питание при проблемах ЖКТ: как правильно построить рацион и облегчить симптомы
- Как настроить базовый DHCP-сервер
- Различия между пакетными менеджерами YUM и DNF
- Как уменьшить размер тома данных Docker в Docker Desktop на Windows
- Как расширить или увеличить размер диска виртуальной машины KVM (VM)
- Как определить точку монтирования для конкретного файла или каталога
• Категории
• Теги
• itsecforu.ru
• Страны посетителей
IT is good
В современном мире социальных медиа и мессенджеров, где каждый голос и мнение имеют значение, накрутка голосований в опросах Телеграм стала актуальной темой. Телеграм — одна…
Искусственный интеллект с каждым годом становится сложнее и прогрессивнее. Появляются инновационные проекты, которые помогают развивать компьютерные чувства. Платформа SMART.by подробно знакомит с такими…
Автоматизация бухгалтерского и налогового учета сегодня – насущная необходимость для каждой организации. Выбор подходящего программного продукта позволяет сильно облегчить рутинную работу бухгалтера, минимизировать…
Маркетинг постоянно развивается, и каждый год появляются новые инструменты и тренды. 2023 год не станет исключением – он обещает принести множество интересных возможностей…
Заболевания желудочно-кишечного тракта являются одной из наиболее распространенных проблем современного человека. Неправильное питание, стрессы, неактивный образ жизни – все это провоцирует возникновение…