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>]

说明

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

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

示例

示例 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 来创建会话。 第四个命令使用 Invoke-Command cmdlet 的 FilePath 参数在新会话中运行 Alias.ps1 文件。

参数

-Append

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

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

-As

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

  • CSV。 以逗号分隔值 (CSV) 格式。
  • 脚本。 为每个导出的别名创建 Set-Alias 命令。 如果使用 .ps1 文件扩展名命名输出文件,则可以将其作为脚本运行,以将别名添加到任何会话。
类型:ExportAliasFormat
接受的值:Csv, Script
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Confirm

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

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

-Description

指定导出文件的描述。 说明作为注释显示在文件顶部,紧跟在标头信息之后。

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

-Force

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

覆盖输出文件,即使对文件设置了只读属性也是如此。

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

强制参数无法强制 Export-Alias 覆盖带有隐藏属性的文件。

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

-LiteralPath

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

类型:String
别名:PSPath, LP
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Name

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

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

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

-NoClobber

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

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

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

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

-PassThru

返回一个对象,该对象表示您正在使用的项目。 默认情况下,此 cmdlet 不生成任何输出。

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

-Path

指定输出文件的路径。 允许通配符,但生成的路径值必须解析为单个文件名。

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

-Scope

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

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

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

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

-WhatIf

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

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

输入

None

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

输出

None

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

AliasInfo

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

备注

PowerShell 包含以下 Export-Alias 别名:

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