New-Alias

创建新别名。

语法

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

说明

New-Alias cmdlet 在当前 PowerShell 会话中创建新别名。 在退出会话或关闭 Windows PowerShell 之后,不会保存使用 New-Alias 创建的别名。 你可以使用 Export-Alias cmdlet 来将你的别名信息保存到文件。 然后可以使用 Import-Alias 来检索已保存的别名信息。

示例

示例 1:创建 cmdlet 的别名

New-Alias -Name "List" Get-ChildItem

此命令创建名为“List”的别名来表示 Get-ChildItem cmdlet。

示例 2:创建 cmdlet 的只读别名

此命令创建名为 C 的别名来表示 Get-ChildItem cmdlet。 它为别名创建“快速 gci 别名”的说明,并使它只读。

New-Alias -Name "C" -Value Get-ChildItem -Description "quick gci alias" -Option ReadOnly
Get-Alias -Name "C" | Format-List *

HelpUri             : https://go.microsoft.com/fwlink/?LinkID=2096492
ResolvedCommandName : Get-ChildItem
DisplayName         : C -> Get-ChildItem
ReferencedCommand   : Get-ChildItem
ResolvedCommand     : Get-ChildItem
Definition          : Get-ChildItem
Options             : ReadOnly
Description         : quick gci alias
OutputType          : {System.IO.FileInfo, System.IO.DirectoryInfo}
Name                : C
CommandType         : Alias
Source              :
Version             :
Visibility          : Public
ModuleName          :
Module              :
RemotingCapability  : PowerShell
Parameters          : {[Path, System.Management.Automation.ParameterMetadata], [LiteralPath,
                      System.Management.Automation.ParameterMetadata], [Filter,
                      System.Management.Automation.ParameterMetadata], [Include,
                      System.Management.Automation.ParameterMetadata]…}

通过 Get-Alias 管道 Format-List 显示有关新别名的所有信息的命令。

示例 3:为具有参数的命令创建别名

function Set-ParentDirectory {Set-Location -Path ..}
New-Alias -Name .. -Value Set-ParentDirectory

第一个命令创建函数,该函数 Set-ParentDirectory用于 Set-Location 将工作位置设置为父目录。 第二个命令用于New-Alias创建用于调用函数Set-ParentDirectory..别名。 由于 Value 参数需要 cmdlet、函数或可执行值,必须创建自定义函数才能创建使用参数的别名。 运行别名 .. 会将当前位置更改为父目录。

参数

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-Description

指定对别名的描述。 你可以键入任意字符串。 如果描述包含空格,则请将其括在引号中。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Force

如果已命名的别名已存在,则指示该 cmdlet 像 Set-Alias 一样操作。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Name

指定新的别名。 可以在别名中使用任何字母数字字符,但第一个字符不能为数字。

类型:String
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Option

指定别名的 Options 属性的值。 有效值为:

  • None:别名没有约束(默认值)
  • ReadOnly:可以删除但不能更改别名,除非使用 Force 参数
  • Constant:不能删除或更改别名
  • Private:别名仅在当前作用域中可用
  • AllScope:将别名复制到任何创建的新作用域
  • Unspecified:不指定此选项

这些值定义为基于标志的枚举。 可以使用此参数将多个值组合在一起以设置多个标志。 可以将这些值以值数组或这些值的逗号分隔字符串形式传递给 Option 参数。 该 cmdlet 将使用二进制或运算合并这些值。 将值作为数组传递是最简单的选项,此选项还支持对值使用 Tab 自动补全。

若要查看会话中所有别名的 Options 属性,请键入 Get-Alias | Format-Table -Property Name, Options -AutoSize

类型:ScopedItemOptions
接受的值:None, ReadOnly, Constant, Private, AllScope, Unspecified
Position:Named
默认值:[System.Management.Automation.ScopedItemOptions]::None
必需:False
接受管道输入:False
接受通配符:False

-PassThru

返回一个代表你所处理的项目的对象。 默认情况下,此 cmdlet 将不产生任何输出。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Scope

指定新别名的范围。 此参数的可接受值为:

  • Global
  • Local
  • Script
  • 一个相对于当前作用域的数字(0 到作用域数,其中 0 是指当前作用域,1 是指其父作用域)。

Local 是默认值。 有关详细信息,请参阅 about_Scopes

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Value

指定作为别名的 cmdlet 或命令元素的名称。

类型:String
Position:1
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

None

不能通过管道将对象传递给此 cmdlet。

输出

None

默认情况下,此 cmdlet 不返回任何输出。

AliasInfo

使用 PassThru 参数时,此 cmdlet 返回表示新别名的 AliasInfo 对象。

备注

PowerShell 包含 New-Alias 的以下别名:

  • 所有平台:

    • nal
  • 要创建新的别名,请使用 Set-AliasNew-Alias。 若要更改别名,请使用 Set-Alias。 要删除别名,请使用 Remove-Alias