Поиск по сайту:

Как добавить каталог в PATH в Linux

Обычно расположение исполняемого файла для запуска установленной программы добавляется в ` PATH в Linux. Следовательно, вы можете запустить программу из любого места оболочки, не вводя полный путь к исполняемому файлу. Однако в некоторых случаях вам необходимо вручную добавить место установки программы в ` PATH. В этом кратком руководстве мы увидим, как добавить каталог в PATH в операционных системах Linux.

Почему нам следует добавлять каталог в путь `?

На днях я тестировал программу Macchina, написанную на языке программирования Rust. Поэтому я установил Rust с помощью менеджера пакетов conda в своей системе Ubuntu, а затем установил Macchina с помощью менеджера пакетов cargo Rust.

Когда я попытался запустить программу Macchina, в выводе было сказано, что программа не установлена. Я снова попытался установить его и получил следующее сообщение об ошибке:

    Updating crates.io index
     Ignored package `macchina v0.5.9` is already installed, use --force to override
warning: be sure to add `/home/sk/.cargo/bin` to your PATH to be able to run the installed binaries

Добавить каталог грузовых отсеков в PATH

Как вы, возможно, уже знаете, когда мы устанавливаем программу, написанную на Rust, исполняемые двоичные файлы будут сохранены в каталоге bin Cargo (т. е. ~/.cargo/bin).

ls ~/.cargo/bin/
macchina

Как видите, двоичный файл Macchina хранится в каталоге грузового отсека. После установки Rust я должен был добавить этот каталог в свой путь `, но забыл. Отсюда вышеописанная проблема!

Если бы я установил Rust с помощью сценария установки rustup, я бы не столкнулся с этой проблемой. Потому что скрипт ржавчины автоматически добавит каталог bin Cargo в переменную среды ` PATH, изменив файл profile , расположенный по адресу ~/.profile. . Но в данном случае я установил Rust внутри среды conda, и каталог грузового отсека не добавлен в PATH.

Получение списка переменных среды в ` PATH

Давайте перечислим все переменные среды в нашем ` PATH с помощью команды echo.

echo $PATH

Пример вывода:

/home/sk/anaconda3/envs/rustenv/bin:/home/sk/anaconda3/condabin:/home/sk/.nvm/versions/node/v15.0.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Получение списка переменных среды в PATH в Linux

Как вы можете видеть в приведенном выше выводе, каталог ~/.cargo/bin/ недоступен в пути ` PATH, поэтому программу Macchina нельзя запустить, используя его имя. Однако я могу запустить программу, введя ее полный путь, как показано ниже:

~/.cargo/bin/macchina

Чтобы запустить программу, используя ее имя из любого места, нам нужно добавить ее в PATH, как показано в следующем разделе.

Добавить каталог в PATH в Linux

Чтобы добавить каталог, например /home/sk/.cargo/bin/, в PATH `, выполните:

export PATH=/home/sk/.cargo/bin:$PATH

Обратите внимание на двоеточие (:) в конце пути к каталогу.

Теперь снова перечислите переменные среды, используя команду echo:

echo $PATH

Пример вывода:

/home/sk/.cargo/bin:/home/sk/anaconda3/envs/rustenv/bin:/home/sk/anaconda3/condabin:/home/sk/.nvm/versions/node/v15.0.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Добавьте каталог в PATH в Linux

Видеть? Каталог ~/.cargo/bin был добавлен в ` PATH. С этого момента я могу запускать любую программу, установленную в этом каталоге, просто вызывая имя программы. Не нужно указывать полный путь!

Обратите внимание, что это временно. Как только вы выйдете из текущего сеанса, переменная среды исчезнет.

Чтобы изменения стали постоянными, отредактируйте файл ~/.bashrc:

nano ~/.bashrc

Добавьте в конце следующую строку:

export PATH=/home/sk/.cargo/bin:$PATH

Добавьте каталог контейнеров Cargo в файл вашего профиля.

Нажмите CTRL+O, а затем CTRL+X, чтобы сохранить файл и выйти.

Выполните следующую команду, чтобы изменения вступили в силу немедленно:

source ~/.bashrc

Если вы хотите сделать это для всей системы, добавьте ту же строку в /etc/profile.

Надеюсь это поможет.

Статьи по данной тематике