将Powershell脚本与非Windows工作流程集成的方法?

Modified on: Thu, 15 Aug 2019 07:20:03 +0800

我喜欢早上新机器的味道。

我正在自动化一个机器创建工作流程,该工作流程涉及我的基础架构中的几个独立系统,其中一些涉及Solaris主机上的15年旧perl脚本,PXE Booting Linux系统和Windows Server 2008上的Powershell。

我可以编写每个部分的脚本,并且集成Linux和Unix自动化相当简单,但我不知道如何可靠地将Powershell脚本连接到其他进程。

我更喜欢这个过程是在Linux主机上开始的,因为我想它最终会成为一个生活在Apache服务器上的Web应用程序,但是如果它需要在Windows上开始,我对此犹豫不决。

我最喜欢psexec的内容。 Linux是针对Windows运行的,但是Cygwin出现了这方面的答案,并且我很感激如果你知道我的意思,那么他们所付出的辛勤劳动,从来都没有感觉到正确。它非常适合桌面并提供很多功能,但我觉得Windows服务器应该被视为Windows服务器而不是卑鄙的Unix机器(顺便提一下,这也是我反对OSX服务器的论据,而且它们是实际上 Unix)。无论如何,除非那是最后也是唯一的选择,否则我不想和Cygwin一起去。

所以我想我要问的是,是否有办法在Linux机器上执行作业。没有Cygwin。我对这些想法和建议持开放态度,包括“看看白痴,每个人都使用Cygwin,所以要把它搞砸并处理它”。提前致谢!

最佳答案

我花了好几个小时来解决这个问题,最终归结为两个可行的选项(那里有很多不可行的选项):

  1. 构建一个Windows框,其中包含一个托管WebAPI的IIS服务,该WebAPI都是以这样的方式进行设置和设置的,以便WinRM会话可以正常工作。
  2. Cygwin的
  3. 醇>

    使用第二个选项,你会遇到通过GNU / Posix抽象层的方式来获取实际的Windows位。这限制了你能用它做什么。

    第一个选项几乎构建了一个基于Web的抽象层,您可以在完整的本机堆栈Windows安装之上编写。如果你愿意投入工作,那么Linux主服务器只需要做一堆curl调用来做你需要做的事情。尽管脚本发生了昙花一现,但这种方法效果最好,因为构建回调系统需要付出更多努力。

作者:sysadmin1138

相关问答

添加新评论