
Оператор which в Unix очень полезен для определения того, какой путь используется для запуска программы из командной строки, и было бы очень полезно иметь что-то подобное в Windows.
решение1
Сохраните это в файле с именем which.cmd
:
@for %%e in (%PATHEXT%) do @for %%i in (%1%%e) do @if NOT "%%~$PATH:i"=="" echo %%~$PATH:i
@for %%i in (%1) do @if NOT "%%~$PATH:i"=="" echo %%~$PATH:i
Или скачатьUnxUtils- у них есть облегченные нативные порты наиболее распространенных инструментов.
Или, если вам не важен легковесный размер, установите MicrosoftУслуги для Unix. Да, у него есть Microsoft Vi.
решение2
я используюгденаписан Джозефом М. Ньюкомером (соавтором книги Win32 Programming).
решение3
^F
Нет, нет родного эквивалента. Даже в оболочке нельзя получить завершение команды cmd /f:on
, что еще хуже.
which
Конечно, вы всегда можете установить порт Windows среды оболочки Unix, чтобы получить .
решение4
В Windows Server 2003/2008 функция «where» встроена.