当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 关于别名提供者

作者:精品下载站 日期:2024-12-14 02:25:02 浏览:13 分类:玩电脑

关于别名提供者


提供商名称

别名

驱动器

Alias:

能力

应该处理

简短描述

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

详细说明

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

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

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

别名提供程序支持以下 cmdlet,本文将介绍这些内容。

  • Get-Location
  • Set-Location
  • Get-Item
  • New-Item
  • Remove-Item
  • Clear-Item

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

  • Export-Alias
  • Get-Alias
  • Import-Alias
  • New-Alias
  • Set-Alias

该提供者公开的类型

每个别名都是 System.Management.Automation.AliasInfo 类的一个实例。

导航 Alias 驱动器

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

Set-Location Alias:

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

Set-Location C:

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

笔记

PowerShell 使用别名让您能够以熟悉的方式使用提供程序路径。 dirls 等命令现在在 Windows 上是别名,在 Linux 和 macOS 上是 dir 用于 Get-ChildItem、cd 是 Set-Location 的别名。 pwd 是 Get-Location 的别名。

显示别名的内容:drive

当当前位置是 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 关联的别名列表。它使用存储 cmdlet 名称的定义属性。

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

创建别名

从 Alias: 驱动器创建别名

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

此命令还使用 -Options 动态参数来设置别名的 AllScope 选项。仅当您位于 Alias: 驱动器中时,-Options 参数才可在 New-Item cmdlet 中使用。点 (.) 表示当前目录,即别名驱动器。

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

使用绝对路径创建别名

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

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

创建新函数的别名

您可以为任何函数创建别名。您可以使用此功能创建包含 cmdlet 及其参数的别名。

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

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

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

更改别名

更改别名的选项

您可以使用带有 -Options 动态参数的 Set-Item cmdlet 来更改别名的 -Options 属性的值。

此命令为 dir 别名设置 AllScopeReadOnly 选项。该命令使用 Set-Item cmdlet 的 -Options 动态参数。当您将 -Options 参数与 AliasFunction 提供程序一起使用时,-Options 参数在 Set-Item 中可用。

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

更改引用命令的别名

此命令使用 Set-Item cmdlet 更改 gp 别名,使其代表 Get-Process cmdlet 而不是 Get -ItemProperty cmdlet。 -Force 参数是必需的,因为 gp 别名的 Options 属性值设置为 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-Location cmdlet 创建新的 push 别名。

创建新别名时,其 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*

删除只读别名

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

Remove-Item Alias:* -Force

动态参数

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

选项 [System.Management.Automation.ScopedItemOptions]

确定别名的 Options 属性的值。

  • :没有选项。该值是默认值。
  • 常量:别名无法删除,其属性也无法更改。 常量仅在您创建别名时可用。您无法将现有别名的选项更改为常量
  • 私有:别名仅在当前作用域中可见,在子作用域中不可见。
  • 只读:除非使用-Force 参数,否则无法更改别名的属性。您可以使用Remove-Item删除别名。
  • AllScope:别名将复制到创建的任何新范围。

支持的 Cmdlet

  • New-Item
  • Set-Item

使用管道

提供程序 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_别名
  • about_Providers

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯