powershell - 是否可以异步调用 powershell cmdlet?

标签 powershell asynchronous

假设我有 cmdlet1 和 cmdlet2,它们都是长时间运行的任务。通常我会有一个批处理文件,它按顺序调用两个 cmdlet:

call powershell cmdlet1
call powershell cmdlet2

反正有没有异步设置它们?

最佳答案

如果您使用的是 PowerShell 2,则可以使用后台作业。

从帮助:

about_Jobs

When you start a background job, the command prompt returns immediately, even if the job takes an extended time to complete. You can continue to work in the session without interruption while the job runs.



所以你可以使用
Start-Job -ScriptBlock { cmdlet1 }
Start-Job -ScriptBlock { cmdlet2 }

但是,您需要将 PowerShell 配置为远程处理,即使在本地运行作业时也是如此。

我也偶然发现了这个:
  • Split-Job
  • 关于powershell - 是否可以异步调用 powershell cmdlet?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1392192/

    相关文章:

    powershell - 管道foreach循环CSV PowerShell

    windows - Powershell - 使桌面背景更改立即生效

    Java Spring - 从异步回调返回?

    asynchronous - 展开时如何保留任务状态

    java主线程管理启动其他线程

    asynchronous - 有没有办法在 Rust 异步函数体内延迟执行一段时间?

    powershell - 更改 PowerShell PSReadLine MenuComplete 函数的颜色

    asp.net-mvc - 从 windows azure 网站调用 windows azure powershell webjob

    docker - Docker : standard_init_linux. 内的 Pip 和 Powershell go:228: exec 用户进程导致:exec 格式错误

    javascript - 在 JavaScript 中使用 Promise 制作异步函数