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.exe 的 PSConsoleFile 参数指定该控制台文件

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

示例

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

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

此命令将当前会话中的 Windows PowerShell 管理单元名称导出到 Windows PowerShell 安装文件夹 $pshome 的 Consoles 文件夹中的 ConsoleS1.psc1 文件。

示例 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

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

第一个命令使用 PowerShell.exe 的 PSConsoleFile 参数来打开具有 Console01.psc1 文件的 Windows PowerShell。

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

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

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

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

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

参数

-Confirm

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

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

-Force

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

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

-NoClobber

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

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

-Path

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

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

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

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

Type:String
Aliases:PSPath
Position:0
Default value:None
Required:False
Accept pipeline input:True
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

输入

String

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

输出

FileInfo

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

备注

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

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

    powershell.exe -PsConsoleFile \<ConsoleFile\>.psc1

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