start-job相关内容

Powershell - 如何为 Start-Job 预先评估脚本块中的变量

我想在 Powershell 中使用后台作业. 如何在 ScriptBlock 定义时评估变量? $v1 = "123"$v2 = "asdf"$sb = {写入主机“值为:$v1, $v2"}$job = Start-Job -ScriptBlock $sb$工作 |等待工作 |接收工作$工作 |删除作业 我得到 $v1 和 $v2 的打印空值.我怎样才能让它们在(传递给)脚本块中进行 ..
发布时间:2022-01-08 13:12:45 其他开发

Powershell:并行运行多个作业并查看后台作业的流结果

概述 希望调用一个接受参数的 Powershell 脚本,在后台运行每个作业,并向我显示详细的输出. 我遇到的问题 脚本似乎可以运行,但我想通过流式传输后台作业运行的结果来确定这一点. 代码 ###StartServerUpdates.ps1 脚本####从文本文件中获取要更新的服务器列表并存储在数组中$servers=get-content c:\serverstoup ..

管理后台作业的运行时间.如果 x 秒后未完成则超时,

我想为我的后台作业计时(从 start-job 开始)并在 x 秒后超时.然而,我发现很难跟踪每个单独作业的运行时间(我正在运行大约 400 个作业). 我希望有一种方法可以让作业超时并将其设置为 failed 如果在 X 秒内没有 completed,但我没有找到超时参数.> 跟踪作业的单个运行时间的好方法是什么? 我想我可以创建一个包含每个作业的开始时间和作业 ID 的哈希表,并 ..
发布时间:2021-06-19 21:10:30 其他开发

将变量传递给 Start-Job

我必须在这里遗漏一些非常简单的东西.这是一个非常基本的脚本来说明我正在尝试的内容: $Computers = @('comp1', 'comp2')$ScriptBlock = {新项目 "C:\Temp\$C.txt" -Force}Foreach($Computers 中的 $C){开始作业 -ScriptBlock $ScriptBlock -ArgumentList $C} 脚本运行, ..
发布时间:2021-06-19 20:53:32 其他开发

如何在 Start-Job 的脚本中调用 powershell 函数?

我看到了这个问题 和 这个问题,但找不到我的问题的解决方案. 情况是这样的:我在脚本 (.ps1) 文件中有两个函数 DoWork 和 DisplayMessage.代码如下: ### 脚本开始###功能 DoWork{$event = Register-EngineEvent -SourceIdentifier NewMessage -Action {DisplayMessage($ev ..
发布时间:2021-06-19 20:40:38 其他开发

Powershell Start-job 同步输出

我有一个启动作业的 powershell 脚本 start-job -scriptblock {而($真){回声“运行"开始睡眠 2}} 然后它继续执行脚本的其余部分. 那个工作,是一种监控那个进程的 PID 的工作. 我想每 n 秒同步打印一次 PID,而不必结束作业. 例如,当脚本的其余部分正在执行时,我希望在我的控制台中看到输出. 在 powershell 中可以 ..
发布时间:2021-06-19 20:33:17 其他开发

在 Start-Job 脚本块中使用凭据获取 WmiObject 失败

我使用 Get-WmiObjet cmdlet 从 Windows 2000 机器成功检索了一些信息.这些机器不是我们域的一部分,所以我使用 -Credential 参数来传递本地管理员凭据. 我现在尝试使用 Start-Job 并行运行多个 WMI 查询,但我什至无法使一个查询工作. 当我运行以下命令时: Start-Job -initializationscript {$cred ..
发布时间:2021-06-19 20:29:29 其他开发

在后台作业中调用命令

我有一个 powershell 2.0 脚本,它应该在多台服务器上运行一个命令并处理输出.我想在后台作业中为每个服务器运行命令和处理. 命令运行没有任何问题,并在半秒或更短的时间内终止: Invoke-Command -ComputerName $client -ScriptBlock { #do some things } 但是当我在后台作业中运行它时,作业不会终止: Start-J ..
发布时间:2021-06-19 20:09:39 其他开发

包含自定义 cmdlet 的 Start-Job 以奇怪的错误终止

我开发了一些自定义 cmdlet,用于向 SharePoint 系统执行不同的导入任务.目前,所有这些 cmdlet 都在单个 PowerShell 脚本中以串行方式运行.我想更改此设置,以便每个 cmdlet 在单独的任务(作业)中执行. 主脚本开始一个新作业,其中 Start-Job 与包含对 cmdlet 调用的单独脚本相关.该脚本启动并执行 cmdlet.我还调试了执行的 cmdle ..
发布时间:2021-06-19 20:07:59 其他开发

如何从列表中异步调用多个 URL

我有几十万个网址需要调用.这些是对应用程序服务器的调用,应用程序服务器将处理它们并将状态代码写入表.我不需要等待响应(成功/失败),只需要服务器收到请求即可.我还希望能够指定一次可以运行多少个并发作业,因为我还没有计算出 tomcat 可以处理多少个并发请求. 这是我到目前为止所得到的,基本上取自其他人尝试做类似的事情,只是不使用 url 调用.文本文件在其自己的行中包含每个 url.网址如 ..
发布时间:2021-06-19 19:58:33 其他开发

如何使用文本文件作为脚本块的输入 - 后台作业中的工作目录

我的任务是编写一个 PS 脚本,该脚本将从文本文件中的机器列表中: 输出机器的IP地址 获取机器上 SCCM 客户端的版本 生成 GPResult HTML 文件或 表示机器离线 最后规定在后台运行脚本(Job) 我有可以完成所有这些事情的脚本块,甚至可以按照我想要的方式格式化输出.我不能似乎做的是让脚本块从与脚本相同的目录中调用源文件.我意识到我可以简单地对目录进行硬编码 ..
发布时间:2021-06-19 19:42:04 其他开发

PowerShell Start-Job 工作目录

有没有办法为 Start-Job 命令指定工作目录? 用例: 我在一个目录中,我想使用 Emacs 打开一个文件进行编辑.如果我直接执行此操作,它将阻止 PowerShell,直到我关闭 Emacs.但是使用 Start-Job 会尝试从我的主目录运行 Emacs,从而让 Emacs 打开一个新文件而不是我想要的文件. 我尝试使用 $pwd 指定完整路径,但脚本块中的变量直到它们 ..
发布时间:2021-06-19 19:33:21 其他开发

Powershell 将变量传递给开始作业

在 powershell 中,我想学习将变量调用到启动作业的最佳方法,这样我就不必为每个服务器编辑脚本,因为它将根据我放置脚本的客户端而特定 $Servername = 'Server1'$pingblock = {路径 $servername |外文件 C:\client\PS\ServerPing.TXT}开始工作 $pingblock 当我运行上面的代码时,我只是在帮助下得到一个文件,就 ..
发布时间:2021-06-19 19:13:53 其他开发

PowerShell:Start-Job -scriptblock多行脚本块?

希望有人可以帮助我弄清楚这是否可行.我有20条ish行,可以在while循环中扫描日志文件.我需要将其与脚本的其余部分并行进行.日志扫描循环正在将条目传递到SQLite中,其他脚本需要对此信息采取行动-因此希望并行运行它们. 如果我使用Job-Start命令,那么-SciptBlock函数似乎只会接受一条管道命令.我要传递的命令太多,因此我需要在脚本块中运行多行. 我尝试了几种方法,但 ..
发布时间:2021-02-12 19:28:00 其他开发

如何处理要在Start-Job中运行的命令的错误?

我正在编写一个自动化脚本。我有一个需要命令或可执行文件的函数。我必须等到命令或可执行文件完成运行,如果失败或通过则返回。我也想将输出写入文件。我正在尝试使用 Start-Job cmdlet。 我当前的代码: $ job =开始作业-脚本块{ Param($ incmd) $ ret =调用表达式$ incmd -ErrorVariable e if($ e){ throw ..
发布时间:2020-10-30 19:40:08 其他开发