У меня есть несколько мест на моем компьютере, которые имеют исполняемые файлы, и все они добавляются в PATH
.
Иногда бывают случаи, когда у меня есть несколько исполняемых файлов с одинаковыми именами, которые либо имеют разные конфигурации, либо делают разные вещи полностью. Например, у меня есть встроенная команда Windows FIND
, и у меня также есть порт Linux для find
для Windows. Оба они очень полезны сами по себе, но делают совершенно разные вещи.
Когда я выполняю FIND
из командной строки; по умолчанию выполняется версия Windows, если я не нахожусь в каталоге с версией Unix. В данном случае это в основном то, что я хочу, но есть ситуации, которые отличаются. Я знаю, что исполняемый файл, который будет выполняться, всегда будет выводиться при вводе which <executable name>
.
Мой вопрос: как этот исполняемый файл выбирается над другим? Почему Windows выбирает Git
расположенный в ...\msysgit\bin\git.exe
того, который находится в D:\bin\git.exe
? Оба места находятся на PATH
. Это что-то глупое, как порядок записей PATH
?