Set-Alias

現在の PowerShell セッションでコマンドレットまたはその他のコマンドのエイリアスを作成または変更します。

構文

Set-Alias
   [-Name] <string>
   [-Value] <string>
   [-Description <string>]
   [-Option <ScopedItemOptions>]
   [-PassThru]
   [-Scope <string>]
   [-Force]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

説明

コマンドレットは Set-Alias 、関数、スクリプト、ファイル、その他の実行可能ファイルなどのコマンドレットまたはコマンドのエイリアスを作成または変更します。 別名は、コマンドレットまたはコマンドを参照する代替名です。 たとえば、 sal コマンドレットのエイリアス Set-Alias です。 詳細については、 about_Aliasesを参照してください。

コマンドレットは複数のエイリアスを持つことができますが、エイリアスは 1 つのコマンドレットにのみ関連付けることができます。 既存のエイリアスを別のコマンドレットに再割り当てしたり、説明などのエイリアスのプロパティを変更したりするために使用 Set-Alias できます。

作成または変更された Set-Alias エイリアスは永続的ではなく、現在の PowerShell セッション中にのみ使用できます。 PowerShell セッションが閉じられると、エイリアスは削除されます。

例 1: コマンドレットのエイリアスを作成する

このコマンドは、現在の PowerShell セッションでコマンドレットのエイリアスを作成します。

PS> Set-Alias -Name list -Value Get-ChildItem

PS> Get-Alias -Name list

CommandType     Name
-----------     ----
Alias           list -> Get-ChildItem

コマンドレットは Set-Alias 、現在の PowerShell セッションにエイリアスを作成します。 Name パラメーターは、listエイリアスの名前を指定します。 Value パラメーターは、エイリアスを実行するコマンドレットを指定します。

エイリアスを実行するには、PowerShell コマンド ラインで入力 list します。

例 2: 既存のエイリアスを別のコマンドレットに再割り当てする

このコマンドは、別のコマンドレットを実行するために既存のエイリアスを再割り当てします。

PS> Get-Alias -Name list

CommandType     Name
-----------     ----
Alias           list -> Get-ChildItem

PS> Set-Alias -Name list -Value Get-Location

PS> Get-Alias -Name list

CommandType     Name
-----------     ----
Alias           list -> Get-Location

コマンドレットはGet-Alias、Name パラメーターを使用してエイリアスをlist表示します。 エイリアスは list コマンドレットに Get-ChildItem 関連付けられています。 エイリアスを list 実行すると、現在のディレクトリ内の項目が表示されます。

このコマンドレットではSet-Alias、Name パラメーターを使用してエイリアスをlist指定します。 Value パラメーターは、エイリアスをコマンドレットにGet-Location関連付けます。

コマンドレットはGet-Alias、Name パラメーターを使用してエイリアスをlist表示します。 エイリアスは list コマンドレットに Get-Location 関連付けられています。 エイリアスを list 実行すると、現在のディレクトリの場所が表示されます。

例 3: 読み取り専用エイリアスを作成および変更する

このコマンドは、読み取り専用のエイリアスを作成します。 読み取り専用オプションは、エイリアスに対する意図しない変更を防ぎます。 読み取り専用エイリアスを変更または削除するには、 Force パラメーターを使用します。

PS> Set-Alias -Name loc -Value Get-Location -Option ReadOnly -PassThru | Format-List -Property *

DisplayName         : loc -> Get-Location
Definition          : Get-Location
Options             : ReadOnly
Description         :
Name                : loc
CommandType         : Alias

PS> Set-Alias -Name loc -Value Get-Location -Option ReadOnly -Description 'Displays the current directory' -Force -PassThru | Format-List -Property *

DisplayName         : loc -> Get-Location
Definition          : Get-Location
Options             : ReadOnly
Description         : Displays the current directory
Name                : loc
CommandType         : Alias

コマンドレットは Set-Alias 、現在の PowerShell セッションにエイリアスを作成します。 Name パラメーターは、locエイリアスの名前を指定します。 Value パラメーターは、エイリアスをGet-Location実行するコマンドレットを指定します。 Option パラメーターは、ReadOnly 値を指定します。 PassThru パラメーターはエイリアス オブジェクトを表し、パイプラインの下にオブジェクトをコマンドレットにFormat-List送信します。 Format-List では、 すべてのプロパティ が表示されるように、Property パラメーターとアスタリスク (*) が使用されます。 出力例は、これらのプロパティの一部の一覧を示しています。

エイリアスは loc 、2 つのパラメーターを追加して変更されます。 説明 は、エイリアスの目的を説明するテキストを追加します。 エイリアスが読み取り専用であるため、locForce パラメーターが必要です。 Force パラメーターを使用しない場合、変更は失敗します。

例 4: 実行可能ファイルのエイリアスを作成する

次の使用例は、ローカル コンピューター上の実行可能ファイルのエイリアスを作成します。

PS> Set-Alias -Name np -Value C:\Windows\notepad.exe

PS> Get-Alias -Name np

CommandType     Name
-----------     ----
Alias           np -> notepad.exe

コマンドレットは Set-Alias 、現在の PowerShell セッションにエイリアスを作成します。 Name パラメーターは、npエイリアスの名前を指定します。 Value パラメーターは、C:\Windows\notepad.exeパスとアプリケーション名を指定します。 このコマンドレットではGet-Alias、Name パラメーターを使用して、エイリアスが notepad.exeに関連付けられていることをnp示します。

エイリアスを実行するには、PowerShell コマンド ラインを入力 np して notepad.exeを開きます。

例 5: パラメーターを使用してコマンドの別名を作成する

この例では、パラメーターを使用してコマンドにエイリアスを割り当てる方法を示します。

などの Set-Locationコマンドレットのエイリアスを作成できます。 などの Set-Location -Path C:\Windows\System32パラメーターと値を持つコマンドのエイリアスを作成することはできません。 コマンドのエイリアスを作成するには、コマンドを含む関数を作成し、その関数のエイリアスを作成します。 詳細については、 about_Functionsを参照してください。

Function CD32 {Set-Location -Path C:\Windows\System32}

Set-Alias -Name Go -Value CD32

という名前 CD32 の関数が作成されます。 この関数では、コマンドレットと Set-LocationPath パラメーターを使用してディレクトリ C:\Windows\System32を指定します。

コマンドレットは Set-Alias 、現在の PowerShell セッションで関数のエイリアスを作成します。 Name パラメーターは、Goエイリアスの名前を指定します。 Value パラメーターは、関数の名前を指定しますCD32

エイリアスを実行するには、PowerShell コマンド ラインで入力 Go します。 関数が CD32 実行され、ディレクトリに変更されます C:\Windows\System32

例 6: 既存のエイリアスのオプションを更新する

この例では、 Option パラメーターを使用して複数のオプションを割り当てる方法を示します。

上記の例を使用して、エイリアスGoを次PrivateのようにReadOnly設定します。

Set-Alias -Name Go -Option ReadOnly, Private

エイリアス Go は既に存在している必要があります。 上記のコマンドを実行した後は、 Force パラメーターを使用しないとエイリアスを変更できず、現在のスコープでのみ使用できます。

パラメーター

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

エイリアスの説明を指定します。 任意の文字列を入力できます。 説明にスペースが含まれている場合は、単一引用符で囲みます。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Option パラメーターが ReadOnly に設定されているエイリアスを変更または削除するには、Force パラメーターを使用します。

Force パラメーターは、Option パラメーターが Constant に設定されているエイリアスを変更または削除できません。

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

新しいエイリアスの名前を指定します。 エイリアス名には、英数字とハイフンを含めることができます。 エイリアス名は、123 などの数値にすることはできません。

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Option

エイリアスの Option プロパティ値を設定します。 意図しない変更からエイリアスを保護するなどのReadOnlyConstant値。 セッション内のすべてのエイリアスの Option プロパティを表示するには、「.」と入力します Get-Alias | Format-Table -Property Name, Options -Autosize

このパラメーターに使用できる値は次のとおりです。

  • AllScope - エイリアスは、作成された新しいスコープにコピーされます。
  • Constant - 変更または削除できません。
  • None - オプションを設定せず、既定値です。
  • Private - エイリアスは、現在のスコープでのみ使用できます。
  • ReadOnly - Force パラメーターを使用しない限り、変更または削除できません。
  • Unspecified

これらの値は、フラグ ベースの列挙体として定義されます。 複数の値を組み合わせて、このパラメーターを使用して複数のフラグを設定できます。 値は、値の配列として、またはそれらの値のコンマ区切り文字列として Option パラメーターに渡すことができます。 このコマンドレットは、バイナリ OR 操作を使用して値を結合します。 配列として値を渡すことは最も簡単なオプションであり、値にタブ補完を使用することもできます。

Type:ScopedItemOptions
Accepted values:AllScope, Constant, None, Private, ReadOnly, Unspecified
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

エイリアスを表すオブジェクトを返します。 オブジェクトを表示するなど Format-List 、書式コマンドレットを使用します。 既定では、 Set-Alias 出力は生成されません。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Scope

このエイリアスが有効なスコープを指定します。 既定値は Local です。 詳細については、 about_Scopesを参照してください。

許容される値は次のとおりです。

  • グローバル
  • ローカル
  • プライベート
  • 番号付きスコープ
  • スクリプト
Type:String
Accepted values:Global, Local, Private, Numbered scopes, Script
Position:Named
Default value:Local
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Value

エイリアスを実行するコマンドレットまたはコマンドの名前を指定します。 Value パラメーターは、エイリアスの Definition プロパティです。

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

入力

None

Set-Alias はパイプラインからの入力を受け入れない。

出力

None or System.Management.Automation.AliasInfo

PassThru パラメーターを使用すると、Set-Aliasエイリアスを表す System.Management.Automation.AliasInfo オブジェクトが生成されます。 それ以外の場合、 Set-Alias 出力は生成されません。

メモ

PowerShell には、各 PowerShell セッションで使用できる組み込みのエイリアスが含まれています。 コマンドレットには Get-Alias 、PowerShell セッションで使用できるエイリアスが表示されます。

エイリアスを作成するには、コマンドレット Set-Alias または New-Alias. PowerShell 6 でエイリアスを削除するには、コマンドレットを Remove-Alias 使用します。 Remove-Item は、以前のバージョンの PowerShell で作成されたスクリプトなど、下位互換性のために受け入れられます。 次のような Remove-Item -Path Alias:aliasnameコマンドを使用します。

各 PowerShell セッションで使用できるエイリアスを作成するには、それを PowerShell プロファイルに追加します。 詳細については、「about_Profiles」 参照してください。

エイリアスは、エクスポートとインポートを行うことで、別の PowerShell セッションで保存および再利用できます。 エイリアスをファイルに保存するには、次を使用します Export-Alias。 保存したエイリアスを新しい PowerShell セッションに追加するには、次を使用 Import-Aliasします。