Set-Alias
現在の PowerShell セッションでコマンドレットまたはその他のコマンドのエイリアスを作成または変更します。
構文
Default (既定)
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 パラメーターを使用します。
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
$Parameters = @{
Name = 'loc'
Value = (Get-Location)
Option = 'ReadOnly'
Description = 'Displays the current directory'
Force = $true
PassThru = $true
}
Set-Alias @Parameters | 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 つのパラメーターを追加して変更されます。
説明 エイリアスの目的を説明するテキストを追加します。
エイリアスは読み取り専用であるため、loc パラメーターが必要です。
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 パラメーターを使用して、np エイリアスが notepad.exeに関連付けられていることを示します。
エイリアスを実行するには、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-Location コマンドレットと Path パラメーターを使用して、C:\Windows\System32ディレクトリを指定します。
Set-Alias コマンドレットは、現在の PowerShell セッションで関数のエイリアスを作成します。
Name パラメーターは、エイリアスの名前 (Go) を指定します。
Value パラメーターは、関数の名前である CD32を指定します。
エイリアスを実行するには、PowerShell コマンド ラインで「Go」と入力します。
CD32 関数が実行され、ディレクトリ C:\Windows\System32に変更されます。
例 6: 既存のエイリアスのオプションを更新する
この例では、Option パラメーターを使用して複数のオプションを割り当てる方法を示します。
前の例から続けて、エイリアス Go を ReadOnly および Privateとして設定します。
Set-Alias -Name Go -Option ReadOnly, Private
エイリアス Go は既に存在している必要があります。 コマンドを実行した後は、Force パラメーターを使用しないとエイリアスを変更できません。現在のスコープでのみ使用できます。
パラメーター
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | cf |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Description
エイリアスの説明を指定します。 任意の文字列を入力できます。 説明にスペースが含まれている場合は、単一引用符で囲みます。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Force
Force パラメーターを使用して、Option パラメーターが ReadOnly に設定されているエイリアスを変更または削除します。
Force パラメーターは、Option パラメーターを定数 に設定してエイリアス変更または削除することはできません。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Name
新しいエイリアスの名前を指定します。 エイリアス名には、英数字とハイフンを含めることができます。 エイリアス名を数値にすることはできません (123 など)。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-Option
エイリアスのプロパティ値 オプションを設定します。
ReadOnly や Constant などの値は、意図しない変更からエイリアスを保護します。 セッション内のすべてのエイリアスの Option プロパティを表示するには、「Get-Alias | Format-Table -Property Name, Options -AutoSize」と入力します。
このパラメーターに使用できる値は次のとおりです。
-
AllScope- エイリアスは、作成された新しいスコープにコピーされます。 -
Constant- 変更または削除できません。 -
None- オプションを設定せず、既定値です。 -
Private- エイリアスは現在のスコープでのみ使用できます。 -
ReadOnly- Force パラメーターを使用しない限り、変更または削除できません。 Unspecified
これらの値は、フラグ ベースの列挙体として定義されます。 このパラメーターを使用して、複数の値を組み合わせて複数のフラグを設定できます。 値は、Option パラメーターに値の配列として、またはそれらの値のコンマ区切り文字列として渡すことができます。 このコマンドレットは、バイナリ OR 操作を使用して値を結合します。 配列として値を渡すことは最も簡単なオプションであり、値にタブ補完を使用することもできます。
パラメーターのプロパティ
| 型: | ScopedItemOptions |
| 規定値: | None |
| 指定可能な値: | AllScope, Constant, None, Private, ReadOnly, Unspecified |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-PassThru
エイリアスを表すオブジェクトを返します。 オブジェクトを表示するには、Format-List などのフォーマット コマンドレットを使用します。 既定では、Set-Alias は出力を生成しません。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Scope
このエイリアスが有効なスコープを指定します。 既定値は Localです。 詳細については、about_Scopesを参照してください。
許容される値は次のとおりです。
GlobalLocalPrivateNumbered scopesScript
パラメーターのプロパティ
| 型: | String |
| 規定値: | Local |
| 指定可能な値: | Global, Local, Private, Numbered scopes, Script |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Value
エイリアスを実行するコマンドレットまたはコマンドの名前を指定します。 Value パラメーターは、エイリアスの Definition プロパティです。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 1 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | ウィスコンシン |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
None
このコマンドレットにオブジェクトをパイプすることはできません。
出力
None
既定では、このコマンドレットは出力を返しません。
AliasInfo
PassThru パラメーターを使用すると、このコマンドレットはエイリアスを表す AliasInfo オブジェクトを返します。
メモ
PowerShell には、Set-Aliasの次のエイリアスが含まれています。
- すべてのプラットフォーム:
sal
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を使用します。