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

Есть ли краткий способ вызвать "другой" исполняемый файл для find доступно в пути, который можно найти с where?

C:\repos>where find
C:\Windows\System32\find.exe
C:\Program Files\Git\usr\bin\find.exe
C:\Users\Qwerty\cmd\UnxUtils_wbin\find.exe

Например что-то вроде find~2 или подражатель whereget find -n 2 -- <arguments for find here>

2 ответа

Вызов исполняемого файла без полного пути всегда найдет и использует первое подходящее имя файла путем поиска в каталогах в $PATH, Для вашего примера, если вы всегда хотите использовать git find, просто убедитесь, что путь к нему появляется в вашем $PATH до Windows find, Если это неудовлетворительно или невозможно (например, из-за политики), вы должны либо создать псевдоним в bash для этого, или всегда вызывайте его, используя полный путь.

Я просто положу это здесь

$ alias whereget='_whereget() { A=$1; B=$2; shift 2; eval \"$(where $B | head -$A | tail -1)\" $@; }; _whereget'
$ whereget 2 find . -type d

К сожалению, это решение работает только в bash, а не в Windows cmd.

Другие вопросы по тегам