等待每个Powershell

等待每个Powershell,powershell,Powershell,我正在通过powershell中的for each命令安装一组文件,但是脚本不会等到执行完成后再移动到下一个文件,如何确保它在移动到下一个文件之前等待每个文件的完成?这是到目前为止我的代码 $files = Get-ChildTtem $PSScriptroot foreach ($file in $files) { if($file.extension.ToUpper() -eq ".appxbundle") { Add-AppxPackage $file.fullnam

我正在通过powershell中的for each命令安装一组文件,但是脚本不会等到执行完成后再移动到下一个文件,如何确保它在移动到下一个文件之前等待每个文件的完成?这是到目前为止我的代码

$files = Get-ChildTtem $PSScriptroot

foreach ($file in $files)
{
if($file.extension.ToUpper() -eq ".appxbundle")
{
Add-AppxPackage $file.fullname -InstallAllResources
}
}

您应该能够使用
启动作业
等待作业
cmdlet来完成此操作:

$files = Get-ChildTtem $PSScriptroot

foreach ($file in $files)
{
if($file.extension.ToUpper() -eq ".appxbundle")
{
    Start-Job -Name Job1 -ScriptBlock { Add-AppxPackage $file.fullname -InstallAllResources }
    Wait-Job -Name Job1
}
}

您应该能够使用
启动作业
等待作业
cmdlet来完成此操作:

$files = Get-ChildTtem $PSScriptroot

foreach ($file in $files)
{
if($file.extension.ToUpper() -eq ".appxbundle")
{
    Start-Job -Name Job1 -ScriptBlock { Add-AppxPackage $file.fullname -InstallAllResources }
    Wait-Job -Name Job1
}
}

Add AppxPackage
行分配给变量。将
Add AppxPackage
行分配给变量。