210 votes

L'équivalent Windows de whereis ?

Existe-t-il un équivalent du système Unix où se trouve dans Windows ?

Pour que je puisse savoir où se trouvent les commandes que je peux exécuter.

264voto

Kevin Points 3496

El wobei fait ce que vous voulez et remonte au moins au kit de ressources pour Windows 98, et est incluse par défaut dans Server 2003, Vista et les versions plus récentes :

C:\>where csc
C:\Windows\Microsoft.NET\Framework\v3.5\csc.exe
C:\Windows\Microsoft.NET\Framework\v2.0.50727\csc.exe

Si elle est exécutée sans arguments (sous Vista), elle donne l'un de mes messages préférés :

C:\>where
ERROR: The operation completed successfully.

Si vous l'exécutez dans PowerShell, veillez à inclure '.exe' pour vous distinguer de tout alias 'where' ou scripts le long du chemin. ('where' est un alias typique pour Where-Object.ps1)

C:\> where.exe where.exe
C:\Windows\System32\where.exe

10voto

Arek Bee Points 201

S'il vous plaît, utilisez wobei commandement :

> where app.exe

C'est le meilleur moyen d'atteindre votre objectif.

Vous pouvez également utiliser la commande PowerShell :

> $env:path.Split(';') | gci -Filter app.exe

et la version étendue ressemble à ceci :

 > $env:path.Split(';') | select -Unique | ? {$_ -and (test-path $_)} | gci -Filter app.exe

7voto

akira Points 58339

Hackerish qui.cmd :

@echo off
@set PATH=.;%PATH%

@rem 
@rem about:  something similar like the unix-alike-which, but with
@rem         within pure cmd
@rem 

if "%1" == "" (
    @echo Usage: 
    @echo.
    @echo   which 'cmd'
    @echo.
    @echo.if 'cmd' is not found, ERRORLEVEL is set to 1
    @echo.  
) else (
    ( @for %%f in (%1 %1.exe %1.cmd %1.bat %1.pif) do if not "%%~$PATH:f" == "" ( @echo %%~$PATH:f ) else @set ERRORLEVEL=1) 
)

4voto

JesusIniesta Points 175

2021 - Windows 10/11

gcm <command>

Get-Command

3voto

bk1e Points 13737

Quelque part, j'ai trouvé ce fichier batch. whereis.bat :

@for %%e in (%PATHEXT%) do @for %%i in (%1%%e) do @if NOT "%%~$PATH:i"=="" echo %%~$PATH:i

Mise à jour : je l'ai peut-être trouvé aquí .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X