Sous Linux, nous avons la commande "qui" pour trouver le chemin d’un exécutable.
Quel est son équivalent Windows? Existe-t-il une commande PowerShell pour le faire?
Certaines versions de Windows (je pense que Windows 2003 et versions ultérieures) ont la commande where:
c:\>where ping
C:\Windows\System32\PING.EXE
Oui, Get-Command
trouvera toutes les commandes, y compris les exécutables:
PS\> Get-Command ipconfig
Si vous voulez limiter les commandes aux exécutables uniquement:
PS\> Get-Command -CommandType Application
Trouvera tous les ex sur votre chemin. Il existe un alias pour une utilisation interactive:
PS\> gcm net* -CommandType Application
Pour obtenir le chemin d'un exécutable, vous pouvez utiliser la propriété Path
de l'objet renvoyé. Par exemple:
PS\> (Get-Command notepad.exe).Path
Pour plus d'informations, exécutez man Get-Command -full
.
Si vous voulez le rendre bref, créez un fichier one.cmd avec le contenu.
echo %~$PATH:1
Ceci recherchera le premier paramètre (% 1) introduit dans le script et affichera le chemin complet du fichier trouvé. Le bon endroit pour placer ce script dans Windows 10 est% LOCALAPPDATA%\Microsoft\WindowsApps\which.cmd
Et vous obtenez votre commande dans le chemin.
c:\>which cmd.exe
c:\>echo C:\Windows\System32\cmd.exe
C:\Windows\System32\cmd.exe
En plus de user10404, la commande help fonctionne sur les alias. Vous pouvez donc utiliser le même nom de commande (gcm) pour obtenir une aide et une utilisation interactive:
help gcm -Parameter *
# or
man gcm -Par *