首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Control-M中调度PowerShell作业

在Control-M中调度PowerShell作业
EN

Stack Overflow用户
提问于 2014-11-06 10:40:49
回答 4查看 4.9K关注 0票数 4

我正面临着Control-M的这个问题。

我已经创建了一个简单的PowerShell作业,并在Control-M中使用任务类型作为命令来调度它。执行后,作业状态变为绿色,但它不执行任何预期操作。但是,双击或使用PowerShell运行时,作业执行正常。

为了进行实验,我创建了一个简单的批处理脚本(.bat)来写入一个文件,并在Control-M中调度它。它不能在Control-M模式下运行(即使变成绿色后也是如此)。

我在批处理文件中直接在Control-M的命令框中给出了命令,它运行得很好。

我尝试了作业类型“作业”,但它有相同的问题。

请来人帮帮忙。另外,在Control-M中是否有针对PowerShell作业的特殊设置?

EN

回答 4

Stack Overflow用户

发布于 2015-09-05 01:57:48

布鲁诺·布兰特是对的。您必须使用Powershell程序执行该脚本。

powershell.exe -NoLogo -NonInteractive -NoProfile -ExecutionPolicy“绕过”-File“隐藏unc path\HelloWorld.ps1”

将代理放在指定的服务器上。让Control-M从放置代理的服务器上运行脚本。"Bypass“仅用于测试连接和测试脚本运行。在调用成功后将其移除,然后再次测试它。在主机(带有Control-M代理)上,将执行策略更改为“远程签名”。再测试一次。如果您的脚本位于另一台计算机上,则可以使用隐藏的unc路径。如果在同一台计算机上,请将路径替换为本地驱动器。

给我发邮件,我可以提供更多信息。如果我有更多的时间,我会发布更多关于什么对我有效,什么对我无效的信息。

票数 4
EN

Stack Overflow用户

发布于 2015-01-08 21:58:18

您不能直接调用Powershell脚本,就好像其中是一个可执行文件一样。

CONTROL-M可能是通过cmd ("DOS")调用您的程序,它不会将PS1文件识别为可执行文件(也许您可以对此进行调整,但在默认情况下,这种情况不会发生)。实际上,在Windows内部,您可能有一个调用Powershell并将脚本传递给它的配置(文件关联)。

在任何情况下,您需要做的是从CONTROL-M调用Powershell并将脚本作为参数传递:

代码语言:javascript
复制
powershell -File yourscript.ps1 param1 param2 

有关此语法的详细信息,请打开cmd并键入

代码语言:javascript
复制
powershell /?
票数 1
EN

Stack Overflow用户

发布于 2016-10-07 02:27:45

我也遇到过类似的情况。尝试了所有不同的powershell命令,但都没有成功。最后-我登录到CCM,转到对其运行powershell命令的代理属性,并选中"login as user“选项。打开这个解决了我的问题,作业将提交并执行,但看起来没有做任何事情。试一试!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26770853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档