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 文件。 它使用值为 Script 的 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

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

AliasInfo

使用 PassThru 参数时,此 cmdlet 将返回一个代表别名的 AliasInfo 对象。

备注

PowerShell 包含以下别名 Export-Alias

  • 所有平台:
    • epal
  • 可以仅将别名导出到文件。