PATH (переменная)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

PATH — переменная окружения Unix-подобных операционных систем, DOS, OS/2 и Microsoft Windows, представляющая собой набор директорий, в которых расположены исполняемые файлы. В основном, каждый выполняемый процесс или сеанс пользователя имеет собственную переменную PATH.

Unix и Unix-подобные[править | править вики-текст]

На POSIX и Unix-подобных операционных системах переменная $PATH задана как одно или несколько имён директорий, разделённых двоеточиями (:).[1][2]

В основном в переменную $PATH входят директории /bin, /usr/bin и /usr/local/bin. Часто также входит текущая директория (.), что позволяет программам исполняться прямо из неё. Однако администраторы как правило не включают её в переменную $PATH, чтобы избежать случайного исполнения скриптов из текущей директории. Запуск такой программы требует написания (./) перед названием.

После создания запроса запуска пользователем или программой, система будет проверять каждую директорию переменной $PATH слева направо в поисках файла, соответствующего заданной команде. Первая найденная программа выполняется в качестве дочернего процесса командной оболочки или программы, сделавшей запрос.

DOS, OS/2, и Windows[править | править вики-текст]

В операционных системах DOS, OS/2 и Windows переменная %PATH% задана в виде списка директорий, разделённых точкой с запятой (;).[3]

Системная директория Windows (как правило это C:\WINDOWS\system32) обычно является первой директорией в списке, за ней следует множество (не все) директорий с установленными программами. Множество программ не попадают в PATH, поскольку они не рассчитаны на запуск из командной оболочки, только из GUI. Некоторые программы могут в процессе установки добавлять свои директории в начало переменной PATH для ускорения процесса поиска и/или подмены команд ОС. В эпоху DOS строки PATH {program directory};%PATH% или SET PATH={program directory};%PATH% могли добавляться в файл AUTOEXEC.BAT вручную.

После ввода команды или выполнения программой системного вызова, система в первую очередь ищет в текущей директории, а затем уже в переменной PATH, проверяя каждую директорию слева направо на наличие исполняемого файла, соответствующего данной команде. Исполняемые программы могут иметь расширения .exe, .com, .bat, .cmd, а также добавленные пользователем.

По нахождении исполняемого файла система запускает его.

Переменная PATH упрощает запуск программ общего пользования, расположенных в отдельных директориях. Однако неграмотное использование переменной PATH может замедлить работу операционной системы в результате поиска среди большого количества или среди несуществующих директорий.

References[править | править вики-текст]