10

Многие учебники по программированию просят пользователей добавить что-то в их PATH но не объясняют, что это такое. Существующие ресурсы, которые объясняют PATH пользователям, плохо знакомым с командной строкой, не очень хороши.

  • Что такое переменная Unix PATH?

  • Я только что скачал программу, затем попытался запустить команду в терминале и получил command not found . Какое это имеет отношение к PATH?

  • Я добавил что-то в PATH с помощью этой команды, и тогда все заработало:

    export PATH=/path/to/some/bin:$PATH
    

    ... но затем я получил command not found снова, когда в следующий раз запустил свой компьютер. Как я могу сделать так, чтобы он оставался в PATH каждый раз, когда открываю Терминал?

  • Как лучше всего определить, загружена ли на моем компьютере такая программа, как Git или gcc?

3 ответа3

16

Путь UNIX - это переменная среды, представляющая собой список каталогов, в которых нужно искать программы, которые вы пытаетесь запустить. Это позволяет избежать необходимости использовать полный путь для запуска таких вещей, как /bin/ls (например, путем добавления /bin в путь).

Например, путь может состоять из:

/bin:/usr/bin:/usr/sbin

и это означает, что при вводе команды xyzzy она попытается запустить первый файл, найденный в текущем списке:

/bin/xyzzy
/usr/bin/xyzzy
/usr/sbin/xyzzy

(он может пропускать неисполняемые файлы, если он умен).

Вы можете добавить вещи к пути с помощью команды, например:

set PATH=/directory/to/add:$PATH:/low/priority/path

который помещает /directory/to/add в начале списка поиска пути и /low/priority/path в конце.

Однако это обычно изменяется только для текущей оболочки. Если вы хотите внести изменения в каждую оболочку, вы должны добавить эту строку в один из ваших файлов запуска, например, $HOME/.profile или /etc/profile . Правильный файл для использования зависит от самой вашей оболочки и от того, как вы настроили загрузочные файлы. Не всегда легко сказать, куда это должно идти, но правила обычно объясняются на странице руководства для любой оболочки, которую вы используете.

Обычно вы можете найти команду в пути с одним из:

which cmd
whence cmd

найти исполняемый файл cmd . Например, в моей системе Debian я получаю следующую расшифровку:

pax> which ls
/bin/ls

pax> which firefox
/usr/bin/firefox

pax> which xyzzy

pax> 
5

Что такое?

Переменная среды PATH - это список каталогов, разделенных двоеточиями, которые просматривает ваша оболочка при вводе команды.

Как это установить?

PATH=$PATH:/your/directory
export PATH

Как я могу сделать так, чтобы он оставался в PATH каждый раз, когда открываю Терминал?

Поместите предыдущие две строки в ~/.bash_profile (если вы используете bash для терминала).

3

PATH - это переменная окружения для Unix-подобных систем.

установить путь:

export PATH=$PATH:<your path>

неустановленный путь:

unset $PATH

установить путь навсегда

в вашей домашней папке включите View -> Show Hidden Files .... pen .bash_profile file, перед экспортом строки PATH, добавьте эту строку .....

PATH=$PATH:<yourpath>

Выйдите из системы и войдите снова ...... проверьте, работает ли она ... хорошо! он должен работать.....

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .