首页 > 解决方案 > Powershell一一执行文件

问题描述

我想用一个exe一个一个地执行几个文件。为此,我使用带有 Out-Gridview 的 Get-ChildItem ,我将其放入变量中以选择稍后要运行的文件:

$choose = Get-ChildItem 'path' | 
          Out-GridView -Title "Select your files" -OutputMode Multiple

要一个一个地运行所有文件,我想我会使用这段代码:

$choose |
Foreach-Object{
    xexec $choose

xexec是可执行文件的名称,但它不起作用。它只执行所选文件中的第一个文件。

我不明白为什么。

标签: powershell

解决方案


ForEach-Object正文中,您需要使用$_(或$PSItem)自动变量来引用当前管道项:

$choose | Foreach-Object { xexec $_.FullName }

推荐阅读