So I recently stumbled on the (potentially) useful %~$PATH:1 expansion, however I seem to be unable to make it work correctly. I tried to use it to make a cheap Windows version of the which command, however the syntax seems to be defeating me. My batch file looks like this:
@echo off
echo %~$PATH:1
However when I run this with for example
which cmd
all I get as output of “ECHO is off.”, which means according to the docs that the %~$PATH:1 didn’t find “cmd”. What am I doing wrong?
Checking for files with the extensions .exe, .cmd or .bat is not enough. The set of applicable extensions is defined in the environment variable PATHEXT.
Here is my version of a which command that honors the PATHEXT variable upon search: