Export-Console

将当前会话中管理单元的名称导出到控制台文件。

语法

Export-Console
      [[-Path] <String>]
      [-Force]
      [-NoClobber]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

说明

Export-Console cmdlet 将当前会话中的 Windows PowerShell 管理单元的名称导出到 Windows PowerShell 控制台文件(.psc1)。 可以使用此 cmdlet 保存管理单元,以便在将来的会话中使用。

若要将 .psc1 控制台文件中的管理单元添加到会话中,请使用 Cmd.exe 或其他 Windows PowerShell 会话在命令行中启动 Windows PowerShell(powershell.exe),然后使用 powershell.exePSConsoleFile 参数指定控制台文件。

有关 Windows PowerShell 管理单元的详细信息,请参阅 about_PSSnapins

示例

示例 1:导出当前会话中管理单元的名称

PS C:\> Export-Console -Path $PSHOME\Consoles\ConsoleS1.psc1

此命令将当前会话中的 Windows PowerShell 管理单元的名称导出到 Windows PowerShell 安装文件夹的控制台文件夹中 ConsoleS1.psc1 文件,$PSHOME

示例 2:将管理单元的名称导出到最新的控制台文件

Export-Console

此命令将 Windows PowerShell 管理单元的名称从当前会话导出到当前会话中最近使用的 Windows PowerShell 控制台文件。 它覆盖以前的文件内容。

如果在当前会话期间尚未导出控制台文件,系统会提示你继续权限,然后提示输入文件名。

示例 3:添加管理单元并导出管理单元的名称

Add-PSSnapin NewPSSnapin
Export-Console -Path NewPSSnapinConsole.psc1
powershell.exe -PSConsoleFile NewPsSnapinConsole.psc1

这些命令将 NewPSSnapin Windows PowerShell 管理单元添加到当前会话,将当前会话中的 Windows PowerShell 管理单元的名称导出到控制台文件,然后使用控制台文件启动 Windows PowerShell 会话。

第一个命令使用 Add-PSSnapin cmdlet 将 NewPSSnapin 管理单元添加到当前会话。 只能添加在系统上注册的 Windows PowerShell 管理单元。

第二个命令将 Windows PowerShell 管理单元名称导出到 NewPSSnapinConsole.psc1 文件。

第三个命令使用 NewPSSnapinConsole.psc1 文件启动 Windows PowerShell。 由于控制台文件包含 Windows PowerShell 管理单元名称,因此管理单元中的 cmdlet 和提供程序在当前会话中可用。

示例 4:将管理单元的名称导出到指定位置

PS C:\> Export-Console -Path Console01
PS C:\> notepad console01.psc1
<?xml version="1.0" encoding="utf-8"?>
<PSConsoleFile ConsoleSchemaVersion="1.0">
  <PSVersion>2.0</PSVersion>
  <PSSnapIns>
     <PSSnapIn Name="NewPSSnapin" />
  </PSSnapIns>
</PSConsoleFile>

此命令将当前会话中的 Windows PowerShell 管理单元的名称导出到当前目录中的 Console01.psc1 文件。

第二个命令在记事本中显示 Console01.psc1 文件的内容。

示例 5:确定要更新的控制台文件

powershell.exe -PSConsoleFile Console01.psc1
Add-PSSnapin MySnapin
Export-Console NewConsole.psc1
$ConsoleFileName
Add-PSSnapin SnapIn03
Export-Console

此示例演示如何使用 $ConsoleFileName 自动变量来确定在不使用 Export-Console 参数值的情况下使用 时将更新的控制台文件。

第一个命令使用 powershell.exePSConsoleFile 参数打开 Windows PowerShell 和 Console01.psc1 文件。

第二个命令使用 Add-PSSnapin cmdlet 将 MySnapin Windows PowerShell 管理单元添加到当前会话。

第三个命令使用 Export-Console cmdlet 将会话中所有 Windows PowerShell 管理单元的名称导出到 NewConsole.psc1 文件。

第四个命令显示 $ConsoleFileName 变量。 它包含最近使用的控制台文件。 示例输出显示 NewConsole.ps1 是最近使用的文件。

第五个命令将 SnapIn03 添加到当前控制台。

第六个命令使用不带 Export-Console 参数的 cmdlet。 此命令将当前会话中所有 Windows PowerShell 管理单元的名称导出到最近使用的文件,NewConsole.psc1

参数

-Confirm

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

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

-Force

指示即使该文件具有只读属性,此 cmdlet 也会覆盖控制台文件中的数据,而不会发出警告。 只读属性已更改,在命令完成时不会重置。

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

-NoClobber

指示此 cmdlet 不会覆盖现有的控制台文件。 默认情况下,如果文件出现在指定的路径中,Export-Console 覆盖该文件而不发出警告。

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

-Path

指定控制台文件的路径和文件名(*.psc1)。 输入可选路径和名称。 不允许使用通配符。

如果仅指定文件名,Export-Console 将创建一个在当前目录中具有该名称和 .psc1 文件扩展名的文件。

除非已在当前会话期间使用 PSConsoleFile 参数打开 Windows PowerShell 或导出控制台文件,否则此参数是必需的。 使用 NoClobber 参数防止当前控制台文件被覆盖时也需要它。

如果省略此参数,Export-Console 覆盖此会话中最近使用的控制台文件。 最近使用的控制台文件的路径存储在$ConsoleFileName自动变量的值中。 有关详细信息,请参阅 about_Automatic_Variables

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

-WhatIf

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

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

输入

String

可以通过管道将路径字符串传递给此 cmdlet。

输出

FileInfo

此 cmdlet 创建一个包含导出别名的文件。

备注

  • 当控制台文件(.psc1)用于启动会话时,控制台文件的名称会自动存储在 $ConsoleFileName 自动变量中。 使用 $ConsoleFileNamePath 参数指定新控制台文件时,将更新 Export-Console 的值。 如果未使用控制台文件,$ConsoleFileName没有值($null)。

    若要在新会话中使用 Windows PowerShell 控制台文件,请使用以下语法启动 Windows PowerShell:

    powershell.exe -PSConsoleFile <ConsoleFile>.psc1

    还可以通过将 Add-PSSnapin 命令添加到 Windows PowerShell 配置文件,为将来的会话保存 Windows PowerShell 管理单元。 有关详细信息,请参阅 about_Profiles