我正面临着Control-M的这个问题。
我已经创建了一个简单的PowerShell作业,并在Control-M中使用任务类型作为命令来调度它。执行后,作业状态变为绿色,但它不执行任何预期操作。但是,双击或使用PowerShell运行时,作业执行正常。
为了进行实验,我创建了一个简单的批处理脚本(.bat)来写入一个文件,并在Control-M中调度它。它不能在Control-M模式下运行(即使变成绿色后也是如此)。
我在批处理文件中直接在Control-M的命令框中给出了命令,它运行得很好。
我尝试了作业类型“作业”,但它有相同的问题。
请来人帮帮忙。另外,在Control-M中是否有针对PowerShell作业的特殊设置?
发布于 2015-09-05 01:57:48
布鲁诺·布兰特是对的。您必须使用Powershell程序执行该脚本。
powershell.exe -NoLogo -NonInteractive -NoProfile -ExecutionPolicy“绕过”-File“隐藏unc path\HelloWorld.ps1”
将代理放在指定的服务器上。让Control-M从放置代理的服务器上运行脚本。"Bypass“仅用于测试连接和测试脚本运行。在调用成功后将其移除,然后再次测试它。在主机(带有Control-M代理)上,将执行策略更改为“远程签名”。再测试一次。如果您的脚本位于另一台计算机上,则可以使用隐藏的unc路径。如果在同一台计算机上,请将路径替换为本地驱动器。
给我发邮件,我可以提供更多信息。如果我有更多的时间,我会发布更多关于什么对我有效,什么对我无效的信息。
发布于 2015-01-08 21:58:18
您不能直接调用Powershell脚本,就好像其中是一个可执行文件一样。
CONTROL-M可能是通过cmd ("DOS")调用您的程序,它不会将PS1文件识别为可执行文件(也许您可以对此进行调整,但在默认情况下,这种情况不会发生)。实际上,在Windows内部,您可能有一个调用Powershell并将脚本传递给它的配置(文件关联)。
在任何情况下,您需要做的是从CONTROL-M调用Powershell并将脚本作为参数传递:
powershell -File yourscript.ps1 param1 param2 有关此语法的详细信息,请打开cmd并键入
powershell /?发布于 2016-10-07 02:27:45
我也遇到过类似的情况。尝试了所有不同的powershell命令,但都没有成功。最后-我登录到CCM,转到对其运行powershell命令的代理属性,并选中"login as user“选项。打开这个解决了我的问题,作业将提交并执行,但看起来没有做任何事情。试一试!
https://stackoverflow.com/questions/26770853
复制相似问题