Как окна определяют, какой исполняемый файл запускается

У меня есть несколько мест на моем компьютере, которые имеют исполняемые файлы, и все они добавлены в PATH .

Иногда бывают случаи, когда у меня есть несколько исполняемых файлов с тем же именем, которые либо имеют разные конфигурации, либо делают разные вещи целиком. Например, у меня есть собственная команда Windows FIND , и у меня также есть порт Linux для find для Windows. Оба они очень полезны сами по себе, но делают разные вещи.

  • Как очистить текущую строку командной строки Windows?
  • Почему некоторые команды не отображаются, когда вы вводите «help» в cmd.exe?
  • Сохранять историю команд cmd.exe между сеансами?
  • Как я могу отображать временную метку файла с секундами, из командной строки?
  • Создание пользователя admin из командной строки
  • Полностью удалить папку в Windows с помощью командной строки
  • Когда я выполняю FIND из командной строки; По умолчанию версия Windows выполняется, если я не в каталоге с версией Unix. В этом случае это в основном то, что я хочу, но есть ситуации, которые различны. Я знаю, что исполняемый файл, который будет запускаться, всегда будет отображаться, когда я набираю which <executable name> .

    Мой вопрос: как этот исполняемый файл выбирается над другим? Почему Windows выбирает Git расположенный в ...\msysgit\bin\git.exe и тот, который находится в D:\bin\git.exe ? Оба местоположения находятся в PATH . Это что-то глупое, как порядок записей PATH ?

  • Запись команды вывода в Windows cmd в файл (с завихрением)
  • Dash или Slash в пакетном файле?
  • Убейте процесс с помощью определенной «командной строки» из командной строки
  • Выпускать / обновлять IP-адрес через терминал в OS X
  • Bat-файл, чтобы отключить адаптер ethernet, а затем повторно использовать его после входа в Windows
  • Что делает «2> & 1» в командной строке?
  • One Solution collect form web for “Как окна определяют, какой исполняемый файл запускается”

    Windows сначала проверяет текущий рабочий каталог, затем проверяет каждый путь в переменной PATH слева направо и, наконец, проверяет местоположение системы (например,% WINDIR%). Это почти идентично Linux, но Linux не проверяет «.». Перед PATH.

    Давайте будем гением компьютера.