【问题标题】:Do PowerShell scripts run under Mono?PowerShell 脚本是否在 Mono 下运行?
【发布时间】:2016-09-24 23:28:27
【问题描述】:

PowerShell 脚本可以在 Mono 下运行吗? 我想在 Mac 上运行它们。

【问题讨论】:

    标签: powershell mono


    【解决方案1】:

    有一个名为 Pash 的 PowerShell 开源版本,专为 Mono 设计。它不完整,但也许能够做你需要的:

    http://pash.sourceforge.net/(这个项目已经很久没有活跃了)

    在 GitHub 上查看重新开始:Pash-Project

    【讨论】:

    • 很可能不是。不幸的是,Pash (a) 非常不完整,并且 (b) 大约一年没有看到任何活动。
    • 其中一个 ubuntu pash 团队刚刚被接受对其进行 GSOC。
    • @LexLi:这看起来像是在真正的 PowerShell 上使用 Reflector 的结果。我认为这是非法的,我建议人们忽略它。然而,真正的 Pash(基于 Igor 的工作)正在重新开发中。见github.com/Pash-Project/Pash
    • @schletti2000,我已经删除了链接,所以不要再问了。谢谢,让我们完全忘记它,就像它永远不存在一样。如果您确实有使用 Microsoft 的 Community Promise 的经验,您应该知道 Microsoft 只允许您克隆它(使用您自己的代码),但不能反编译来自 Microsoft 的二进制文件。这就是为什么我删除了指向非法链接的原因。让我们希望开源社区最终能够将 pash 进一步提升。
    • 查看@Jeremy 的回答——微软已经发布了这个。
    【解决方案2】:

    Powershell 现已开源,可用here

    目前它是 V6.0 alpha。我一直在 OS X 上运行它进行很多文件操作,并且运行良好。

    请注意,您可能需要安装 .Net Core 才能使 Powershell 正常运行。另请注意,system.management.automation.runspaces 开箱即用(适用于 runspacepools)。

    【讨论】:

    • 自从 Powershell 开源以来,这显然是最好的答案
    【解决方案3】:

    powershell.exe 存根实际上是本机 win32 程序,而不是托管程序集。将来有可能在 Mono 中托管 System.Management.Automation 程序集,但我相当确定它目前不起作用。

    【讨论】:

    • 加上 PS 命令引用了许多 Windows API,因此它不是一个简单的端口,比如在 Linux 中运行的 wine
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    • 1970-01-01
    • 2010-10-03
    • 2012-11-03
    相关资源
    最近更新 更多