Linuxには、実行可能ファイルのパスを見つける「which」コマンドがあります。
それに相当するWindowsとは何ですか?それを行うためのPowerShellコマンドはありますか?
Windowsの一部のバージョン(Windows 2003以降だと思います)にはwhereコマンドがあります。
c:\>where ping
C:\Windows\System32\PING.EXE
はい、Get-Command
は実行可能ファイルを含むすべてのコマンドを検索します。
PS\> Get-Command ipconfig
コマンドを実行可能ファイルだけに制限したい場合:
PS\> Get-Command -CommandType Application
パス内のすべてのexeを検索します。インタラクティブな使用のためのエイリアスがあります:
PS\> gcm net* -CommandType Application
実行可能ファイルのパスを取得するには、返されたオブジェクトのPath
プロパティを使用できます。例えば:
PS\> (Get-Command notepad.exe).Path
詳細については、man Get-Command -full
を実行してください。
where.exe
ではなく、明示的にwhere
ではなくPowerShellで機能します。
PS C:\Users\birdc> where ping
PS C:\Users\birdc> where.exe ping
C:\Windows\System32\PING.EXE
短くしたい場合は、内容を記述した1行のwhich.cmdファイルを作成します。
echo %~$PATH:1
これにより、スクリプトに入力された最初のパラメーター(%1)が検索され、見つかったファイルの完全パスが表示されます。このスクリプトをWindows 10に配置するのに適した場所は、%LOCALAPPDATA%\ Microsoft\WindowsApps\which.cmdです。
そして、あなたはあなたのwhichコマンドをパスに入れます。
c:\>which cmd.exe
c:\>echo C:\Windows\System32\cmd.exe
C:\Windows\System32\cmd.exe
User10404に加えて、helpコマンドはエイリアスに対しても機能するため、ヘルプとインタラクティブな使用に同じコマンド名(gcm)を使用できます。
help gcm -Parameter *
# or
man gcm -Par *