Export-Alias

将有关当前定义的别名的信息导出到文件中。

语法

Export-Alias
      [-Path] <String>
      [[-Name] <String[]>]
      [-PassThru]
      [-As <ExportAliasFormat>]
      [-Append]
      [-Force]
      [-NoClobber]
      [-Description <String>]
      [-Scope <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Export-Alias
      -LiteralPath <String>
      [[-Name] <String[]>]
      [-PassThru]
      [-As <ExportAliasFormat>]
      [-Append]
      [-Force]
      [-NoClobber]
      [-Description <String>]
      [-Scope <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

说明

该 cmdlet 将 Export-Alias 当前会话中的别名导出到文件中。 如果输出文件不存在,则该 cmdlet 将创建它。

Export-Alias 可以导出特定范围或所有范围内的别名,它可以以 CSV 格式生成数据,也可以作为一系列可添加到会话或 PowerShell 配置文件的Set-Alias命令生成。

示例

示例 1:导出别名

Export-Alias -Path "alias.csv"

此命令将当前的别名信息导出到当前目录中名为 Alias.csv 的文件。

示例 2:导出别名,除非导出文件已存在

Export-Alias -Path "alias.csv" -NoClobber

此命令将当前会话中的别名导出到 Alias.csv 文件。

由于指定 了 NoClobber 参数,因此如果当前目录中已存在Alias.csv文件,该命令将失败。

示例 3:向文件追加别名

Export-Alias -Path "alias.csv" -Append -Description "Appended Aliases" -Force

此命令将当前会话中的别名附加到 Alias.csv 文件。

该命令使用 Description 参数将说明添加到文件顶部的注释。

该命令还使用 Force 参数覆盖任何现有的Alias.csv文件,即使它们具有只读属性也是如此。

示例 4:将别名导出为脚本

Export-Alias -Path "alias.ps1" -As Script
Add-Content -Path $Profile -Value (Get-Content alias.ps1)
$S = New-PSSession -ComputerName Server01
Invoke-Command -Session $S -FilePath .\alias.ps1

此示例演示如何使用生成的脚本文件格式 Export-Alias

第一个命令将会话中的别名导出到 Alias.ps1 文件。 它使用 As 参数和脚本值生成包含每个别名的Set-Alias命令的文件。

第二个命令将 Alias.ps1 文件中的别名添加到 CurrentUser-CurrentHost 配置文件中。 配置文件的路径保存在变量中 $Profile 。 该命令使用 Get-Content cmdlet 从Alias.ps1文件和 Add-Content cmdlet 获取别名,以便将它们添加到配置文件中。 有关详细信息,请参阅 about_Profiles

第三和第四个命令将Alias.ps1文件中的别名添加到 Server01 计算机上的远程会话。 第三个命令使用 New-PSSession cmdlet 创建会话。 第四个命令使用 cmdlet 的 Invoke-CommandFilePath 参数在新会话中运行Alias.ps1文件。

参数

-Append

指示此 cmdlet 将输出追加到指定文件,而不是覆盖该文件的现有内容。

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

-As

指定输出格式。 CSV 是默认值。 此参数的可接受值为:

  • CSV 以逗号分隔值 (CSV) 格式。
  • 脚本。 为每个导出的别名创建一个 Set-Alias 命令。 如果你使用 .ps1 文件扩展命名输出文件,则可以将它作为脚本运行,以将别名添加到任何会话中。
Type:ExportAliasFormat
Accepted values:Csv, Script
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

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

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

强制运行命令而不要求用户确认。

即使在文件上设置了只读属性,也将覆盖输出文件。

默认情况下, Export-Alias 覆盖不带警告的文件,除非设置只读或隐藏属性,否则在命令中使用 NoClobber 参数。 在命令中使用这两个参数时 ,NoClobber 参数优先于 Force 参数。

Force 参数无法强制Export-Alias使用隐藏属性覆盖文件。

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

-LiteralPath

指定输出文件的路径。 与 Path 不同,LiteralPath 参数的值严格按照所键入的形式使用。 不会将任何字符解释为通配符。 如果路径包括转义符,请将其括在单引号中。 单引号告知 PowerShell 不要将任何字符解释为转义序列。

Type:String
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

指定要导出的别名数组的名称。 允许使用通配符。

默认情况下, Export-Alias 导出会话或作用域中的所有别名。

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

-NoClobber

指示此 cmdlet 可防止 Export-Alias 覆盖任何文件,即使 Force 参数在命令中使用。

如果省略 NoClobber 参数, Export-Alias 将覆盖现有文件而不发出警告,除非对文件设置了只读属性。 NoClobber 优先于 Force 参数,该参数允许 Export-Alias 使用只读属性覆盖文件。

NoClobber 不阻止 Append 参数将内容添加到现有文件。

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

-PassThru

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

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

-Path

指定输出文件的路径。 允许使用通配符,但所得到的路径值必须解析为单个文件名称。

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

-Scope

指定应从其导出别名的作用域。 此参数的可接受值为:

  • 全球
  • Local
  • 脚本
  • 相对于当前范围的数字 (0,其中 0 是当前范围,1 是其父)

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

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

-WhatIf

显示在此 cmdlet 运行的情况下将会发生什么。 此 cmdlet 未运行。

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

输入

None.

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

输出

None or System.Management.Automation.AliasInfo

使用 Passthru 参数时, Export-Alias 返回一个代表别名的 System.Management.Automation.AliasInfo 对象。 否则,此 cmdlet 将不生成任何输出。

备注

  • 可以仅将别名导出到文件。