Out-GridView

将输出发送到单独窗口中的交互式表中。

语法

Out-GridView
   [-InputObject <PSObject>]
   [-Title <String>]
   [-PassThru]
   [<CommonParameters>]
Out-GridView
   [-InputObject <PSObject>]
   [-Title <String>]
   [-Wait]
   [<CommonParameters>]
Out-GridView
   [-InputObject <PSObject>]
   [-Title <String>]
   [-OutputMode <OutputModeOption>]
   [<CommonParameters>]

说明

此 cmdlet 仅在 Windows 平台上可用。

cmdlet Out-GridView 将命令的输出发送到网格视图窗口,其中输出显示在交互式表中。

由于此 cmdlet 需要用户界面,因此它不适用于 Windows Server Core 或 Windows Nano Server。

你可以使用该表的以下功能检查你的数据:

  • 隐藏、显示和重新排序列
  • 对行进行排序
  • 快速筛选器
  • 添加条件筛选器
  • 复制和粘贴

有关完整说明,请参阅本文的 备注 部分。

注意

此 cmdlet 在 PowerShell 7 中重新引入。 此 cmdlet 仅在支持 Windows 桌面的 Windows 系统上可用。 有关此 cmdlet 的跨平台版本,请参阅PowerShell 库中的图形工具模块。

示例

示例 1:将进程输出到网格视图

此示例获取在本地计算机上运行的进程,并将其发送到网格视图窗口。

Get-Process | Out-GridView

示例 2:使用变量将进程输出到网格视图

此示例还获取在本地计算机上运行的进程,并将其发送到网格视图窗口。

$P = Get-Process
$P | Out-GridView

cmdlet 的 Get-Process 输出保存在 变量中 $P 。 然后, $P 通过管道连接到 Out-GridView

示例 3:在网格视图中显示所选属性

此示例在网格视图中显示正在运行的进程的选定属性。

Get-Process | Select-Object -Property Name, WorkingSet, PeakWorkingSet |
  Sort-Object -Property WorkingSet -Descending | Out-GridView

的输出 Get-Process 通过管道传递给 Select-Object 以选择 NameWorkingSetPeakWorkingSet 属性。 另一个管道运算符将筛选的对象发送到 Sort-Object cmdlet,以按 WorkingSet 属性的值按降序对其进行排序。 然后,通过管道将排序结果传递给 Out-GridView。 你现在可以使用网格视图的功能搜索、排序和筛选数据。

示例 4:将输出保存到变量,然后输出网格视图

此示例将 cmdlet 输出保存在变量中,然后将其发送到 Out-GridView

($A = Get-ChildItem -Path $PSHOME -Recurse) | Out-GridView

Get-ChildItem 使用 $PSHOME 自动变量获取 PowerShell 安装目录及其子目录中的所有文件。 命令中的括号可建立操作的顺序。 因此,命令的Get-ChildItem输出在发送到 Out-GridView之前保存在 变量中$A

示例 5:将指定计算机的进程输出到网格视图

此示例在网格视图窗口中显示 Server01 计算机上运行的进程。

Get-Process -ComputerName "Server01" | ogv -Title "Processes - Server01"

考生使用 ogv,这是 cmdlet 的 Out-GridView 别名。 Title 参数指定窗口标题。

示例 6:将数据从远程计算机输出到网格视图

此示例演示如何将从远程计算机收集的数据发送到 Out-GridView

Invoke-Command -ComputerName S1, S2, S3 -ScriptBlock {Get-Culture} | Out-GridView

Invoke-Command 在三台远程计算机上运行 Get-Culture 。 生成的数据通过管道传递给 Out-GridView。 请注意,在远程计算机上运行的脚本块不包括 Out-GridView 命令。 如果包括该命令,则当它尝试在每台远程计算机上打开网格视图窗口时,该命令将会失败。

示例 7:通过“Out-GridView”传递多个项

此示例允许从 Out-GridView 窗口中选择多个进程。 所选进程将传递到 命令并 Export-Csv 写入 ProcessLog.csv 文件。

Get-Process | Out-GridView -PassThru | Export-Csv -Path .\ProcessLog.csv

PassThru 参数 Out-GridView 允许你向下发送多个项。 PassThru 参数等效于使用 OutputMode 参数的 Multiple 值。

示例 8:Create“Out-GridView”的 Windows 快捷方式

此示例演示如何使用 的 Wait 参数 Out-GridView 创建窗口的 Out-GridView Windows 快捷方式。

pwsh -Command "Get-Service | Out-GridView -Wait"

此命令行可用于 Windows 快捷方式。 如果没有 Wait 参数,PowerShell 将在窗口打开后 Out-GridView 立即退出,这几乎会立即关闭 Out-GridView 窗口。

参数

-InputObject

指定 cmdlet 接受的 对象作为 的 Out-GridView输入。

使用 InputObject 参数将对象的 Out-GridView集合发送到 时, Out-GridView 会将集合视为一个集合对象,并显示一个表示集合的行。 若要显示集合中的每个对象,请使用管道运算符 (|) 将对象发送到 Out-GridView

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

-OutputMode

指定交互窗口将管道向下发送的项作为其他命令的输入。 默认情况下,此 cmdlet 将不产生任何输出。 若要将交互式窗口中的项通过管道向下发送,请单击以选择项,然后单击“确定”。

此参数的值确定你可以通过管道向下发送多少项。

  • None. 无项。 这是默认值。
  • Single. 零个项或一个项。 当下一个命令只能获取一个输入对象时,使用此值。
  • Multiple. 零个、一个或多个项。 当下一个命令可以获取多个输入对象时,使用此值。 此值等效于 Passthru 参数。
Type:OutputModeOption
Accepted values:None, Single, Multiple
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

指示 cmdlet 将管道中的交互窗口中的项作为输入发送到其他命令。 默认情况下,此 cmdlet 将不产生任何输出。 此参数等效于使用 OutputMode 参数的 Multiple 值。

若要将交互式窗口中的项通过管道向下发送,请单击以选择项,然后单击“确定”。 支持 Shift 单击和 Ctrl 单击。

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

-Title

指定窗口标题栏中 Out-GridView 显示的文本。 默认情况下,标题栏显示调用 的 Out-GridView命令。

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

-Wait

指示 cmdlet 禁止命令提示符,并阻止Windows PowerShell关闭,Out-GridView直到窗口关闭。 默认情况下,当窗口打开时 Out-GridView ,命令提示符将返回。

此功能允许你在 Out-GridView Windows 快捷方式中使用 cmdlet。 在不使用 Wait 参数的快捷方式中使用 时Out-GridViewOut-GridView窗口仅在 PowerShell 关闭前片刻显示。

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

输入

PSObject

可以将任何对象发送到此 cmdlet。

输出

None

通常, Out-GridView 不会返回任何对象。 使用 PassThru 参数时,表示所选行的对象将返回到管道。

备注

此 cmdlet 仅在 Windows 平台上可用。

你不能使用远程命令在另一台计算机上打开网格视图窗口。

发送到的 Out-GridView 命令输出不能使用 Format cmdlet(如 Format-TableFormat-Wide cmdlet)进行格式化。 若要选择属性,请使用 Select-Object cmdlet。

在网格视图窗口中,可能无法对来自远程命令的反序列化输出正确进行格式设置。

的键盘快捷方式Out-GridView

使用此键: 若要执行此操作:
Tab 将光标从 “筛选器 ”框移动到“ 添加条件 ”菜单,然后移回表。
UpArrow 上移一行。 从第一行数据移动到列标题。
DownArrow 下移一行。
LeftArrow 在列标题行中,向左移动一列。
RightArrow 在列标题行中,向右移动一列。
ContextMenuKey 在列标题行中,显示“选择列”选项。
Enter空格键 在列标题行中,对列数据进行排序 (切换 A-Z、Z-A) 。

如何使用网格视图窗口功能

若要隐藏或显示列:

  1. 右键单击任何列标题,然后单击“ 选择列”。
  2. “选择列 ”对话框中,使用箭头键将“所选列”之间的列移动到“可用列”框。 网格视图窗口中仅显示 “选择列 ”框中的列。

若要重新排序列:

可以将列拖放到所需位置。 或者使用以下步骤:

  1. 右键单击任何列标题,然后单击“ 选择列”。
  2. “选择列 ”对话框中,使用“ 上移 ”和 “下移 ”按钮对列重新排序。 列表顶部的列显示在网格视图窗口中列表底部的列的左边。

如何对表数据排序

  • 若要对数据排序,请单击列标题。
  • 若要更改排序顺序,请再次单击列标题。 每次你单击同一标题时,排序顺序会在升序和降序之间切换。 当前顺序由列标题中的三角形指示。

如何选择表数据

  • 若要选择行,请选择该行或使用向上或向下箭头导航到该行。
  • 若要选择除标题行) 之外的所有行 (,请按 Ctrl+A
  • 若要选择连续行,请在单击行或使用箭头键的同时按住 Shift 键。
  • 若要选择非连续行,请按 Ctrl 键并单击以向所选内容添加行。
  • 你不能选择列,也不能选择整个列标题行。

如何复制行

  • 若要从表中复制一行或多行,请选择这些行,然后按 Ctrl+C。

    可以将数据粘贴到任何文本或电子表格程序。 你无法复制列或部分行,也无法复制列标题行。

如何在表 (快速筛选) 中搜索

使用“筛选器”框搜索表中的数据。 当你在框中进行键入时,表中仅显示包含所键入的文本的项。

  • 文本的搜索。 若要在表中搜索文本,请在“筛选器”框中,键入要查找的文本。

  • 多个单词的搜索。 若要在表中搜索多个字词,请键入由空格分隔的字词。 Out-GridView 显示包含逻辑 AND) (所有字词的行。

  • 文本短语的搜索。 若要搜索包含空格或特殊字符的短语,请将该短语用引号引起来。 Out-GridView 显示包含短语完全匹配的行。

  • 在列中搜索。 若要在一个或多个列中搜索文本,请使用以下格式:

    <column>:<text> [<column>:<text>] ...

    例如,若要在 DisplayName 列中查找“Net”,请在 “筛选器 ”框中键入:

    displayname:net

    若要在 DisplayNameName 列中查找具有“Net”的行,请在 “筛选器 ”框中键入:

    displayname:net name:net

  • 关闭搜索。 若要再次显示整个表格,请单击 “筛选器 ”框右上角的红色“X”按钮,或者从“ 筛选器 ”框中删除文本。

使用条件来筛选表

可以使用规则或条件来确定表中显示哪些项。 仅当项满足你建立的所有条件时,它们才会显示。 可用条件由网格视图窗口中显示的对象的属性和这些属性的 .NET Framework 类型来确定。

每个条件具有以下格式:

<column> <operator> <value>

不同属性的条件由 AND 连接。 同一属性的条件通过 OR 进行连接。 你不能更改逻辑连接符。

条件仅影响显示。 它不会从表中删除项。

如何添加条件

  1. 若要显示 “添加条件 ”菜单按钮,请单击窗口右上角的“展开”箭头。
  2. 单击“ 添加条件 ”菜单按钮。
  3. 单击以选择列(属性)。 你可以选择一个或多个属性。
  4. 选择完属性后,单击“ 添加 ”按钮。
  5. 若要取消添加,请单击“ 取消”。
  6. 若要添加更多条件,请再次单击“ 添加条件 ”按钮。

如何编辑条件

  • 若要更改运算符,请单击蓝色运算符值,然后从下拉列表中选择其他运算符。
  • 若要输入或更改值,请在值框中键入值。 如果输入的值无效,将显示一个圆形的 X 图标。 若要删除它,请更改该值。
  • 若要创建 OR 语句,请添加具有相同属性的条件。

如何删除条件

  • 若要删除所选条件,请单击每个条件旁边的红色 X。
  • 若要删除所有条件,请单击“ 全部清除 ”按钮。