about_ Alias _Provider

提供程序名称

Alias

驱动器

Alias:

功能

ShouldProcess

简短说明

提供对 PowerShell 别名及其所代表的值的访问权限。

详细说明

PowerShell Alias 提供程序可让你获取、添加、更改、清除和删除 PowerShell 中的别名。

别名是 cmdlet、函数、可执行文件(包括脚本)的替代名称。 PowerShell 包含一组内置别名。 可以将自己的别名添加到当前会话和 PowerShell 配置文件。

Alias 驱动器是一个仅包含别名对象的平面命名空间。 这些别名没有子项。

Alias 提供程序支持以下 cmdlet,这将在本文中介绍。

PowerShell 包括一组用于查看和更改别名的 cmdlet。 使用 cmdlet 时 Alias ,无需 Alias: 在名称中指定驱动器。 本文不介绍如何使用 Alias cmdlet。

此提供程序公开的类型

每个别名都是一个 系统管理组件 Alias 的实例。Info 类。

Alias 提供程序在驱动器中公开其 Alias: 数据存储。 若要使用别名,可以使用以下命令将位置 Alias: 更改为驱动器:

Set-Location Alias:

若要返回到文件系统驱动器,请键入驱动器名称。 例如,键入:

Set-Location C:

还可以从任何其他 Alias PowerShell 驱动器使用提供程序。 若要引用另一个位置的别名,请使用 Alias: 路径中的驱动器名称。

备注

PowerShell 使用别名让你熟悉使用提供程序路径的方法。 和 等 dir ls 命令现在是 Get-ChildItem的别名, cdSet-Location 的别名pwd和 是Get-Location 的别名

显示 : 驱动器 Alias 的内容

此命令获取当前位置为驱动器时所有别名 Alias: 的列表。 它使用通配符 * 来指示当前位置的所有内容。

PS Alias:\> Get-Item -Path *

在驱动器中,表示当前位置的点 和表示当前位置中所有项的通配符 具有相同的 Alias: . * 效果。 例如, Get-Item -Path .Get-Item \* 生成相同的结果。

提供程序 Alias 没有容器,因此与 一起使用上述命令具有相同的效果 Get-ChildItem

Get-ChildItem -Path Alias:

获取所选别名

此命令获取 ls 别名。 由于它包含路径,因此可以在任何 PowerShell 驱动器中使用它。

Get-Item -Path Alias:ls

如果驱动器中 Alias: ,可以省略路径中的驱动器名称。

还可以检索别名的定义,方法为提供程序路径添加美元符号 $ () 。

$Alias:ls

获取特定 cmdlet 的所有别名

此命令获取与 Get-ChildItem cmdlet 关联的别名列表。 它使用 Definition 存储 cmdlet 名称的属性。

Get-Item -Path Alias:* | Where-Object {$_.Definition -eq "Get-ChildItem"}

创建别名

从:驱动器创建别名 Alias

此命令 serv 为 cmdlet 创建别名 Get-Service 。 由于当前位置位于驱动器中,因此 Alias: -Path 不需要参数。

此命令还使用 -Options dynamic 参数 AllScope 在别名上设置选项。 -Options New-Item 仅当位于驱动器中时,此参数才会出现在 cmdlet 中 Alias: 。 点 (.) 指示当前目录,即别名驱动器。

PS Alias:\> New-Item -Path . -Name serv -Value Get-Service -Options "AllScope"

创建具有绝对路径的别名

你可以为可调用命令的任意项创建别名。 此命令为创建 np 别名 Notepad.exe

New-Item -Path Alias:np -Value c:\windows\notepad.exe

为新函数创建别名

你可以为任意函数创建别名。 可使用此功能创建一个包括 cmdlet 及其参数的别名。

第一个命令创建 CD32 函数,该函数将当前目录更改为 System32 目录。 第二个命令 go 为函数创建别名 CD32

完成该命令后,可以使用 CD32go 来调用函数。

function CD32 {Set-Location -Path c:\windows\system32}
Set-Item -Path Alias:go -Value CD32

更改别名

更改别名选项

可以将 Set-Item cmdlet 与 -Options 动态参数一起使用来更改别名的属性的值 -Options

此命令设置 AllScope 别名的和 ReadOnly 选项 dir 。 该命令使用 -Options cmdlet 的动态参数 Set-Item-Options Set-Item 当你将参数与 Alias函数 提供程序一起使用时,可在中使用。

Set-Item -Path Alias:dir -Options "AllScope,ReadOnly"

更改引用的别名命令

此命令使用 Set-Item cmdlet 更改别名 gp ,以便它表示 Get-Process cmdlet 而不是 Get-ItemProperty cmdlet。 -Force参数是必需的,因为别名 Option 的 s 属性的值设置为 gp ReadOnly 。 由于命令从驱动器内 Alias: 提交,因此未在路径中指定驱动器。

Set-Item -Path gp -Value Get-Process -Force

更改将影响四个用于定义别名和命令之间的关联的属性。 若要查看更改的效果,请键入以下命令:

Get-Item -Path gp | Format-List -Property *

重命名别名

此命令使用 Rename-Item cmdlet 将 popd 别名更改为 pop

Rename-Item -Path Alias:popd -NewName pop

复制别名

此命令复制别名 pushd ,以便为 push cmdlet 创建一个新 Push-Location 别名。

创建新别名时,其 Description 属性具有 null 值。 而且, Option 其 属性的 值为 None 。 如果命令从驱动器内部 Alias: 发出,可以从 参数的值中省略驱动器 -Path 名称。

Copy-Item -Path Alias:pushd -Destination Alias:push

删除别名

此命令从当前 serv 会话中删除别名。 可以在任何 PowerShell 驱动器中使用此命令。

Remove-Item -Path Alias:serv

此命令删除以“s”开头的别名。 它不会删除只读别名。

Clear-Item -Path Alias:s*

删除只读别名

此命令从当前会话中删除所有别名,其 属性的 值为 Constant 的别名 Option 除外-Force参数允许命令删除其 属性值为 的 Option 别名 ReadOnly

Remove-Item Alias:* -Force

动态参数

动态参数是由 PowerShell 提供程序添加的 cmdlet 参数,仅在启用提供程序的驱动器中使用 cmdlet 时可用。

Options [System.Management.Automation.ScopedItem Option s]

确定别名的 Option s 属性的值。

  • None:无选项。 此值为默认值。
  • Constant:无法删除别名,也无法更改其属性。 Constant 仅在创建别名时才可用。 不能将现有别名的选项更改为 Constant
  • Private:别名仅在当前作用域(而不是子作用域)中可见。
  • ReadOnly:除非使用参数,否则无法更改别名的属性 -Force 。 您可以使用 Remove-Item 来删除别名。
  • AllScope:将别名复制到任何创建的新作用域。

支持的 cmdlet

使用管道

提供程序 cmdlet 接受管道输入。 可以通过将提供程序数据从一个 cmdlet 发送到另一个提供程序 cmdlet 来使用管道来简化任务。 若要详细了解如何将管道与提供程序 cmdlet 配合使用,请参阅本文中提供的 cmdlet 参考。

获取帮助

从 Windows PowerShell 3.0 开始,你可以获取有关提供程序 cmdlet 的自定义帮助主题,它们介绍了这些 cmdlet 在文件系统驱动器中的行为方式。

若要获取针对文件系统驱动器进行自定义的帮助主题,请在文件系统驱动器中运行get-help命令,或使用 get-help 的 -Path 参数来指定文件系统驱动器。

Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path alias:

另请参阅

about_ Alias es

about_Providers