Я ответил на это для Microsoft Windows. Я вижу, что здесь также есть тег Linux. Ну, применяются те же понятия. (Дальнейшие замечания по Linux упоминаются в последнем абзаце.)
Вы можете использовать программы, если они не находятся в каталоге, указанном переменной среды PATH. Однако это немного менее удобно.
Например, я часто запускаю 7-Zip, хотя его нет в пути. Таким образом, вместо запуска командной строки с «7z», я запускаю командную строку с:
"C:\Program Files\7-Zip\7z.exe"
Это не так плохо, как кажется, потому что то, что я на самом деле печатаю, обычно выглядит примерно так:
C: \ tabPro tab7 tab7tab
(Я прислушиваюсь к звуковым сигналам, которые могут случиться, если есть опечатки, и после моего последнего расширения с помощью tabключа я также проверяю точность командной строки, чтобы убедиться, что она работает так, как мне хотелось.)
Программа может проверить, как вы ссылались на программу в командной строке, и может проверить ваш текущий каталог. Таким образом, программа может действовать по-разному в зависимости от того, находится ли она в переменной PATH. Однако это маловероятно.
Альтернативные решения: Настройте переменную среды PATH, чтобы она также включала каталог, в котором установлена программа.
Другое альтернативное решение: просто поместите исполняемый файл в каталог, который уже находится в PATH. (Однако некоторые программы являются более сложными, поскольку им также могут потребоваться другие файлы, такие как DLL-файлы, скопированные в такой каталог; поэтому такой подход обычно не рекомендуется для программ, которые необходимо «установить», выполнив «установку» Программа ". Однако для простых исполняемых файлов, которые можно просто запустить, не нуждаясь в куче вспомогательных файлов, это часто жизнеспособно.)
В Linux есть некоторые незначительные различия: вы бы просто использовали " echo $
" вместо " echo %PATH%
", использовали прямые косые черты вместо обратных, а 7za
для 7-Zip вместо 7z.exe
. Если вы хотите изменить путь, вы можете использовать другую команду, например export
, но на самом деле в зависимости от того, какую оболочку вы используете.)