HOWTO · PowerShell

PowerShell でエイリアスを作成する方法

この記事では、私たちがエイリアスをどのように作成し、環境に正しく設定するか、また、次回使用のために作成したエイリアスをどのようにエクスポートおよびインポートできるかについて議論します。

Windows PowerShell のエイリアスは、cmdlet またはコマンド要素の別名です。Windows PowerShell は、名前を忘れた場合に PowerShell cmdlet のエイリアスを作成できます。Windows PowerShell のエイリアスを使用すると、全体のコマンドよりも直感的で短い文字列を使用して cmdlet を見つけることができます。本記事では、どのようにしてエイリアスを作成し、環境で正しく設定するかについて説明します。

Windows PowerShell でのエイリアスの作成

Windows PowerShell でエイリアスを作成するには、New-Alias cmdlet を使用します。New-Alias cmdlet は、現在のセッションに新しいエイリアスを作成します。

New-Alias Goto Set-Location

PowerShell ウィンドウにエイリアスを入力するか、スクリプト内でエイリアスを使用すると、Windows PowerShell はエイリアスにマッピングされた cmdlet を実行することを認識します。

PowerShell エイリアスは保存されますか?

Windows PowerShell ウィンドウセッションを閉じると、New-Alias cmdlet で作成したエイリアスは保存されません。したがって、スクリプトに設定したエイリアスがある場合、同じ Windows PowerShell エイリアスを再作成する必要があります。

スクリプトを実行し、エンジンがエイリアスを cmdlet にマッピングできない場合は、エラーが発生します。したがって、これらのエラーを防ぐために New-Alias PowerShell cmdlet の代わりに Set-Alias を使用する必要があります。その後、以下の手順に従って、新しい Windows PowerShell ウィンドウを開いたとき、またはエイリアスを使用する PowerShell スクリプトが実行されるときにエイリアスがアクティブのままになるようにします。

  • Windows PowerShell プロファイル内に PSConfiguration フォルダーを作成します。Get-Variable Profile PowerShell cmdlet を実行することで、自分の Windows PowerShell プロファイルを確認できます。
  • PSConfiguration フォルダー内に、Microsoft.PowerShell_Profile.PS1 という名前のファイルを作成します。このファイルには、エイリアスを作成するための Windows PowerShell cmdlet が含まれます。
  • 次に、ファイルにエイリアスを作成するための PowerShell コマンドを追加します。
Set-Alias Goto Set-Location

すべての既存の PowerShell エイリアスをリストする

保存されたエイリアスの名前を忘れた場合、Get-Alias PowerShell コマンドを使用して、既存のすべての Windows PowerShell エイリアスのリストを取得できます。Get-Alias cmdlet を実行すると、Microsoft.PowerShell_Profile.PS1 ファイルから作成されたものを含むすべてのエイリアスが取得されます。たとえば、作成した特定のエイリアスを取得したい場合、以下のように Get-Alias コマンドに -Name パラメーターを使用できます。

例コード:

Get-Alias -Name GoTo

Windows PowerShell エイリアスのエクスポートとインポート

上記の方法を使用すると、Windows PowerShell のエイリアスがシステム上でアクティブのままですが、PowerShell エイリアスをエクスポートおよびインポートする必要がある場合もあります。この方法は、Windows オペレーティングシステムを再インストールする場合や PowerShell エンジンに問題が発生した場合に適しています。Windows PowerShell プロファイルからすべての PowerShell エイリアスをエクスポートするには、次の PowerShell コマンドを実行します。

例コード:

Export-Alias C:\temp\PSAliases.txt

上記のコマンドは、すべての Windows PowerShell エイリアスをカンマ区切りの値リストとして PSAliases.txt ファイルにエクスポートします。すべてのエイリアスを PowerShell スクリプトとしてエクスポートしたい場合、以下の例のように -As Script スイッチパラメーターをコマンドに使用できます。

例コード:

Export-Alias C:\temp\PSAliases.txt -As script

ファイルから Windows PowerShell エイリアスをインポートするのは簡単です。エイリアスインポートプロセスを開始するには、PowerShell コマンドを実行してください:

例コード:

Import-Alias C:\temp\PSAliases.txt

ヒント:作成されたスクリプトがファイルからエイリアスをインポートするとき、スクリプトは以前に作成したエイリアスを上書きしません。

Windows PowerShell エイリアスの再マッピングと削除

既存のエイリアスを別の Windows PowerShell cmdlet に再マッピングするには、以下の例のように Set-Alias cmdlet を使用できます。

Set-Alias Goto Set-Location

Microsoft はまだ Windows PowerShell エイリアスを削除するための別の cmdlet を開発していません。ただし、複数のアプリケーションとともに Remove-Item コマンドを使用することができます。Windows PowerShell パラメーターを Alias:に設定する必要があります。次のコマンドのように:

Remove-Item Alias:Goto

PowerShell プロファイルからすべてのエイリアスを削除するには、Remove-Item Alias:* cmdlet を実行してください。

潜在的なエイリアスの問題

Windows PowerShell エイリアスを使用することには利点がありますが、注意すべき潜在的なエイリアスの問題もいくつかあります:

  • 混乱を避けるために、プロファイルにあまりにも多くのエイリアスを追加しないようにします。あまりにも多くのエイリアスを追加すると、最も頻繁に使用する cmdlet をすべて覚えられなくなる問題に直面します。
  • 長い複数のコマンド文字列にエイリアスを付けると、コマンドが失敗します。
  • PowerShell エイリアスは、単一のコマンドまたは cmdlet のみに保存してください。