Locate and display files in a directory tree.
The WHERE command is roughly equivalent to the UNIX 'which' command. By default, the search is done in the current directory
and in the PATH.
Syntax WHERE [/r Dir] [/q] [/f] [/t] Pattern ... WHERE [/q] [/f] [/t] [$ENV:Pattern In PowerShell: C:\Windows\System32\WHERE.exe ..options as above key /r A recursive search, starting with the specified Dir directory. /q Don’t display the files but return either an exit code of 0 for success or 1 for failure. /f Display the output file name in quotation marks. /t Display the size, time stamp, and date stamp of the file. pattern The Drive\Directory\file, or set of files to be found. you can use wildcard characters ( ? * ) and UNC paths. ENV Path to search where ENV is an existing environment variable containing one or more paths.
By default, WHERE searches the current directory and the paths specified in the PATH environment variable.
The WHERE command is particularly useful to reveal multiple versions of the same comand/script on the system PATH such as a Resource Kit utility - Robocopy or ForFiles.
To run the WHERE command from PowerShell it is necessary to give the full path C:\Windows\System32\WHERE.exe otherwise the Where-Object cmdlet will take precedence.
Optional search paths (in pattern) should not be used in conjunction with /r Dir.
Examples
Find all copies of robocopy.exe in the current system path:
C:\Windows\System32\WHERE robocopy.exe
Find all files named 'Zappa' on the remote computer 'Server64' searching
the subdirectories of Share1:
WHERE /r \\Server64\Share1 Zappa.*
“Who never walks, save where he sees men's tracks, makes no discoveries” ~ Josiah Gilbert Holland
Related:
Which.cmd - Show full path to executable.
OldNewthing - 90 byte 'whereis' batch file:
@for %%e in (%PATHEXT%) do @for %%i in (%1%%e) do @if NOT "%%~$PATH:i"=="" echo %%~$PATH:i
whereis utility - Flounder.com.
Which - several scripts from Rob Vanderwoude.
CD - Change Directory.
TYPE - Display the contents of a text file.
Equivalent bash command (Linux): which - Show full path of commands.
Equivalent PowerShell cmdlet: (get-command $file).Definition