it-swarm.com.de

Was entspricht Windows dem "Welchen" -Befehl in Unix? Gibt es einen entsprechenden PowerShell-Befehl?

Unter Linux haben wir den Befehl "which", um den Pfad einer ausführbaren Datei herauszufinden.
Was ist das Windows-Äquivalent? Gibt es dafür einen PowerShell-Befehl?

57
Invincible

Einige Windows-Versionen (ich denke Windows 2003 und höher) haben den Befehl where:

c:\>where ping
C:\Windows\System32\PING.EXE
59
Randy Levy

Ja, Get-Command findet alle Befehle einschließlich ausführbarer Dateien:

PS\> Get-Command ipconfig

Wenn Sie die Befehle auf nur ausführbare Dateien beschränken möchten:

PS\> Get-Command -CommandType Application

Findet alle Exes auf deinem Weg. Es gibt einen Alias ​​für die interaktive Verwendung:

PS\> gcm net* -CommandType Application

Um den Pfad einer ausführbaren Datei abzurufen, können Sie die Eigenschaft Path des zurückgegebenen Objekts verwenden. Zum Beispiel:

PS\> (Get-Command notepad.exe).Path

Für weitere Informationen führen Sie man Get-Command -full aus.

28
user10404

Wenn Sie es kurz machen möchten, erstellen Sie eine one line which.cmd-Datei mit dem Inhalt

echo %~$PATH:1

Dadurch wird der erste Parameter (% 1) durchsucht, der dem Skript zugeführt wird, und der vollständige Pfad der gefundenen Datei wird angezeigt. Ein guter Ort, um dieses Skript in Windows 10 einzufügen, ist% LOCALAPPDATA%\Microsoft\WindowsApps\which.cmd

Und du bekommst deinen welchen Befehl im Pfad.

c:\>which cmd.exe

c:\>echo C:\Windows\System32\cmd.exe
C:\Windows\System32\cmd.exe
2
Manu

Zusätzlich zu user10404 kann der Befehl help auch für Aliase verwendet werden, sodass Sie für die Hilfe und die interaktive Verwendung denselben Befehlsnamen (gcm) verwenden können:

help gcm -Parameter *
# or
man gcm -Par *
2
yzorg