エイリアスとは(PowerShell 入門)

この記事は以前 http://blog.hiros-dot.net に書いたものです。

エイリアスとは、コマンドレットや関数、スクリプト、ファイルなどに使用する別名のことです。

各コマンドレットには別名がつけられており Get-Alias コマンドレットを使用して調べることができます。

試しに、コマンドラインで Get-Alias と入力して[Enter]キーを押してみてください。

PS C:\Work> Get-Alias
CommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           ac                                                  Add-Content
Alias           asnp                                                Add-PSSnapin
Alias           clc                                                 Clear-Content
Alias           cli                                                 Clear-Item
Alias           clp                                                 Clear-ItemProperty
Alias           clv                                                 Clear-Variable
Alias           cpi                                                 Copy-Item
Alias           cpp                                                 Copy-ItemProperty
Alias           cvpa                                                Convert-Path
Alias           diff                                                Compare-Object
Alias           epal                                                Export-Alias
Alias           epcsv                                               Export-Csv
Alias           fc                                                  Format-Custom
Alias           fl                                                  Format-List
Alias           foreach                                             ForEach-Object
:
: 長いので省略
:
Alias           dir                                                 Get-ChildItem
Alias           erase                                               Remove-Item
Alias           move                                                Move-Item
Alias           rd                                                  Remove-Item
Alias           ren                                                 Rename-Item
Alias           set                                                 Set-Variable
Alias           type                                                Get-Content

PowerShellでは cmd.exe のdir や type コマンドを使用することが可能ですが、実はGet-ChildItem やGet-Content のエイリアスであることがわかります。

さらにUnixでの lsやcatも見られますが、これらも別名であることがわかります。

このように、エイリアスがあるおかげで、PowerShellが初めてのユーザーでも、すぐに使い始められるようになっています。

さて、今紹介したエイリアスは、cmd.exeユーザー や Unixユーザー向けのものでした。

これ以外にも、コマンドレットを単に短縮したエイリアスもあります。

たとえば、Get-Command なら gcm、 Get-WmiObject なら Gwmi といった感じです。

エイリアスからコマンドレット名を調べるには

エイリアスからコマンドレット名を調べるには Get-Alias エイリアス名 とします。

次は cd というエイリアスのコマンドレット名を調べます。

PS C:\Work> Get-Alias cd
CommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           cd                                                  Set-Location

コマンドレット名からエイリアスを調べる

コマンドレット名からエイリアスを調べるには Get-Alias | Where { $_.Definition -eq "コマンドレット" } とします。

次は、Get-ChildItem コマンドレットのエイリアスを調べます。

PS C:\Work> Get-Alias | Where { $_.Definition -eq "Get-ChildItem"}
CommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           gci                                                 Get-ChildItem
Alias           ls                                                  Get-ChildItem
Alias           dir                                                 Get-ChildItem

 

コマンドレットのエイリアスを調べたいときに重宝しますので、ぜひ覚えておくと良いと思います。

コメント

タイトルとURLをコピーしました