PowerShellでwhichコマンドのようにコマンドのフルパスを調べる方法(Get-Command)
目次
スポンサードリンク
LinuxやmacOSでは、コマンドの実体パスを確認するために which コマンドを使います。Windwosにはwhichコマンドはありませんが、PowerShellでは Get-Command でwhich相当の機能を実現できます。
Get-Commandコマンドの基本的な構文
Get-Command の基本的な構文は以下の通りです。指定したコマンドの実態がどこにあるか表示できます。
Get-Command コマンド名
下記例では、pingコマンドの実体がどこにあるか表示しています。この結果から、pingコマンドの実体は「C:\Windows\system32\PING.EXE」にあることが分かります。Linuxと異なる点として、ファイルパスだけでなく、ファイルのバージョンなど付随する情報も確認できます。
PS C:\Users\username> Get-Command ping
CommandType Name Version Source
----------- ---- ------- ------
Application PING.EXE 10.0.26... C:\Windows\system32\PING.EXE
なお、Get-Command の省略形として gcm も利用できます。
PS C:\Users\username> gcm ping
CommandType Name Version Source
----------- ---- ------- ------
Application PING.EXE 10.0.26... C:\Windows\system32\PING.EXE
Get-Commandコマンドでエイリアスかどうか確認する
Get-Command は ファイルの場所だけでなく、エイリアス(省略名)のコマンドの正式名称を確認することもできます。下記は ls コマンドの実行例ですが、ls は Get-ChildItem のエイリアスであることが分かります。
PS C:\Users\username> Get-Command ls
CommandType Name Version Source
----------- ---- ------- ------
Alias ls -> Get-ChildItem
普段使用しているコマンドの正体や実体の確認・デバッグに役立つので、ぜひ活用してみてください。
コマンドプロンプトのポケットリファレンス:Windows11対応版
Windows環境で開発やシステム管理を行うエンジニアにとって、コマンドプロンプトの知識は非常に重要なスキルセットです。こちらの書籍は初心者にもわかりやすく網羅的です。手元に置いておきたい一冊です。
リンク
PowerShellの基礎を一通り学べるおすすめ書籍
リンク