WMI 查询脚本作为作业

2023-12-04

我有两个脚本。一个以服务器列表作为参数来调用另一个。第二个查询旨在执行 WMI 查询。当我手动运行它时,它完美地完成了这一点。当我尝试将其作为一项作业运行时,它会永远挂起,我必须将其删除。

为了节省空间,这里是调用脚本的相关部分:

进程服务器.ps1

Start-Job -FilePath .\GetServerDetailsLight.ps1 -ArgumentList $sqlsrv,$destdb,$server,$instance

获取服务器详细信息Light.ps1

param($sqlsrv,$destdb,$server,$instance)

$password = get-content C:\SQLPS\auth.txt | convertto-securestring
$credentials = new-object -typename System.Management.Automation.PSCredential -argumentlist "DOMAIN\MYUSER",$password

[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO')
$box_id = 0;

if ($sqlsrv.length -eq 0) {
write-output "No data passed"
break
}

function getinfo {
    param(
        [string]$svr,
        [string]$inst
        )
    "Entered GetInfo with: $svr,$inst"
    $cs = get-wmiobject win32_operatingsystem -computername $svr -credential $credentials -authentication 6 -Verbose -Debug | 
    select Name, Model, Manufacturer, Description, DNSHostName, Domain, DomainRole, PartOfDomain,
    NumberOfProcessors, SystemType, TotalPhysicalMemory, UserName, Workgroup
    write-output "WMI Results: $cs"
}
getinfo $server $instance
write-output "Complete"

作为作业执行,它将永远显示为“运行”:

PS C:\sqlps> Start-Job -FilePath .\GetServerDetailsLight.ps1 -ArgumentList DBSERVER,LOGDB,SERVER01,SERVER01

Id              Name            State      HasMoreData     Location             Command
--              ----            -----      -----------     --------             -------
21              Job21           Running    True            localhost            param($sqlsrv,$destdb,...

GAC    Version        Location
---    -------        --------
True   v2.0.50727     C:\WINDOWS\assembly\GAC_MSIL\Microsoft.SqlServer.Smo\10.0.0.0__89845dcd8080cc91\Microsoft.SqlServer.Smo.dll
getinfo MSDCHR01 MSDCHR01
Entered GetInfo with: SERVER01,SERVER01

我得到的最后一个输出是“Entered GetInfo with: SERVER01,SERVER01”。如果我像这样手动运行它:PS C:\sqlps> .\GetServerDetailsLight.ps1 DBSERVER LOGDB SERVER01 SERVER01WMI 查询按预期执行。

我试图确定这是为什么,或者至少是一种捕获作业内部错误的有用方法。

Thanks!


这是我能找到的一个例子。http://social.technet.microsoft.com/Forums/en-US/winserverpowershell/thread/a6c816dd-2c2c-47bc-a2d0-238fbb9d66a6

我见过很多其他类似的讨论。

无论如何,为了确保您的 WMI 存储库没有损坏,只需尝试重新编译它。将以下行放入批处理文件中并运行:

net stop winmgmt
c:
cd c:\windows\system32\wbem
rd /S /Q repository
regsvr32 /s %systemroot%\system32\scecli.dll
regsvr32 /s %systemroot%\system32\userenv.dll
mofcomp cimwin32.mof
mofcomp cimwin32.mfl
mofcomp rsop.mof
mofcomp rsop.mfl
for /f %%s in ('dir /b /s *.dll') do regsvr32 /s %%s
for /f %%s in ('dir /b *.mof') do mofcomp %%s
for /f %%s in ('dir /b *.mfl') do mofcomp %%s
mofcomp exwmi.mof
mofcomp -n:root\cimv2\applications\exchange wbemcons.mof
mofcomp -n:root\cimv2\applications\exchange smtpcons.mof
mofcomp exmgmt.mof
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WMI 查询脚本作为作业 的相关文章

随机推荐

  • TensorFlow:恢复 RNN 网络后损失猛增

    环境信息 操作系统 Windows 7 64位 从预构建的 pip 安装的 Tensorflow 无 CUDA 1 0 1 Python 3 5 2 64 位 Problem 我在恢复网络 RNN 字符基础语言模型 时遇到问题 下面是具有相
  • Spark 查找 Dataframe 提高性能的最佳方法

    数据框A 数百万条记录 其中一列是create date modified date 数据框 B 500 条记录具有 start date 和 end date 目前的方法 Select a b from a join b on a cre
  • 如何检测html5画布是否为空白?

    我有一个涂鸦应用程序 可以将 html5 画布保存到 s3 中的图像中 如果用户在没有绘制任何内容的情况下意外单击 保存 我想避免保存空白 完全透明 的 png 我发现即使对于空白画布 toDataURL 也绝不是空字符串 而是大量数据转储
  • 表单上的两个提交按钮

    假设我有一组机构 每个机构都知道他的父亲是谁 并且一个机构可以有很多孩子 现在我为这个问题创建了一组级联下拉列表 因此在第一个时候 他会找到没有父亲的列表 如果可能的话 为第 0 层 一旦用户选择一个项目 第二个列表上的列表就会加载其子列表
  • Xcode 7: -F/ 的链接器警告,但 app.xcodeproj/project.pbxproj 中没有设置与 匹配

    我使用 Xcode 7 beta 3 将 iOS 的 Swift 1 x 项目转换为 Swift 2 x 它可以编译并运行 但链接器警告仍然存在 我已经在 project pbxprox 中搜索了有问题的路径 并查看了 Xcode 中的 构
  • 在 c# 中使用 asp.net 中的 Windows 身份验证

    我试图了解 Windows 身份验证的工作原理以及如何实现它 我读过很多文章 并在 youtube 上观看了一些相当长的视频 但我仍然不明白需要添加到我的 web config 文件 index aspx 页面中才能使其正常工作 这是ind
  • Python终端打开后报错

    当我尝试通过终端从终端打开 python 时python命令 我突然遇到错误 终端工作正常 但我想了解为什么会发生这种情况 提前致谢 PS C Users blackbird gt py AMD64 on win32 Type help c
  • 适用于 Go 的 AWS 开发工具包 - DynamoDb - 向 FilterExpression 添加多个条件

    我正在尝试使用表达式生成器按多个条件过滤 DynamoDb 扫描 根据这个博客文章 尝试在构建器中添加另一个条件将覆盖先前的条件 必须有某种方法来添加另一个条件 但我还没有找到一种方法来做到这一点 这行不通 cond1 expression
  • c++ * 和 & 同时

    在我的 C 数据结构课程中 我们正在研究二叉树 有些代码包含同时使用 和 的地方 彼此相邻 这非常令人困惑 void balance AvlNode t 是使用 this 的函数定义的一个示例 这里的 和 会发生什么 编辑 这个问题的答案告
  • 如何使用 PHP 和 Javascript 实现服务器推送/长轮询/comet

    如何使用 PHP 和 Javascript 实现彗星 服务器推送设计模式 本质上我想要的是这样的 用户单击 提交 按钮 JavaScript 显示类似 正在处理 0 100 个项目 的消息 每当处理新项目时 php 服务器都会推送更新 并且
  • 使用 sqlalchemy 将数据加载到 Oracle 数据库时不允许使用“Multi”方法

    我正在使用 sqlalchemy 和 pandas 将数据帧加载到 Oracle 数据库 由于 multi 方法允许批量上传 因此我选择该方法 我的pandas版本是1 0 1 但是我收到以下错误 当前数据库版本设置的 oracle 方言不
  • d3.js 可重用饼图,具有动态更新

    我正在尝试创建一个具有动态转换的可重用饼图作为学习任务 我正在研究 Chris Viau 编写的 d3 js 可重用组件电子书 我遇到的问题基本上是它不更新 而是创建多个饼图 我想知道我是否不理解 d3 dispatch 的工作原理 或者我
  • 在 AWS CodeBuild 中缓存 Gradle 包装器

    这就是我当前的构建规范 phases build commands gradlew soakTest s cache paths root gradle caches gradle 但是 当此构建规范在 CodeBuild 中运行时 它会打
  • 如果 Term 达到某个点,Kusto row_cumsum 会修改 Term

    我有一份按以下顺序排列的员工姓名和工资列表 我需要按以下格式创建输出表 即 每当累计工资总额超过 3000 时 我必须检测到这一点并标记该行 我尝试过 row cumsum 并重置Term一旦超过 3000 但第二次迭代就不起作用了 dat
  • CSS 使用 Flexbox 对齐两侧的几个项目 [重复]

    这个问题在这里已经有答案了 我试图使用 css flexbox 在两侧做一些项目 但不知何故我无法将它们 div 并排粘贴 PS 我无法设置元素数量 因为我希望它灵活 因为我可以添加或删除 并且它不会影响我的CSS 我希望它是这样的 图片样
  • 有条件合并列表元素

    我想根据某些表达式有条件地合并列表中彼此跟随的元素 一个更好地解释我想做的事情的例子 from val list List a1 a2 b1 b2 b3 a3 a4 我想将以 b 开头的所有元素合并到单个元素中以获得如下结果列表 List
  • FormData 为空有问题吗?

    我似乎对 FormData 为空有疑问 我正在尝试在单个 POST 请求中上传文件和 JSON 我尝试了各种各样的方法 但似乎没有任何效果 我想知道我是否在这里弄乱了一些基本的东西 但我似乎找不到任何东西 非常感谢您的帮助
  • 使用变换函数添加变量,同时忽略 NA

    我有一个包含大量变量的数据框 我通过将一些旧变量添加在一起来创建新变量 我用来执行此操作的代码是 name of data frame lt transform name of data frame new variable var1 va
  • 对构造函数的调用不能出现在常量表达式中

    我很抱歉我的新手问题 但我对 C 不太了解 任何人都可以回答为什么我在编译以下代码时收到错误 错误 对构造函数的调用不能出现在常量表达式中 class EliminationWeight public typedef double Type
  • WMI 查询脚本作为作业

    我有两个脚本 一个以服务器列表作为参数来调用另一个 第二个查询旨在执行 WMI 查询 当我手动运行它时 它完美地完成了这一点 当我尝试将其作为一项作业运行时 它会永远挂起 我必须将其删除 为了节省空间 这里是调用脚本的相关部分 进程服务器