【问题标题】:Is there an API for calling system scripts/programs?是否有用于调用系统脚本/程序的 API?
【发布时间】:2011-02-03 22:11:57
【问题描述】:

是否有类似 API 构建在标准 ProcessBuilder 之上用于调用系统程序?我不会争辩说脚本可以移植到 Java,但像 arping 和 netstat 这样的实用程序在 Linux 中是不错的选择。

【问题讨论】:

  • 这是操作系统的作用吗?运行脚本和程序?你在写操作系统吗?或者,更重要的是,你为什么要担心这个? shell 脚本是运行脚本和程序的常用操作系统接口。
  • S.Lott:你在说什么? Sun 编写 Runtime.exec 和 ProcessBuilder 的人在哪里兴奋?来自 Apache 的那些编写 Commons Exec(已接受的答案)的家伙呢?他们都只是在看东西还是OP的问题是完全合法的?你到底在讨论这个评论和这些问题时带来了什么? “你在写操作系统吗?” [原文如此] 恕我直言,这是一个非常粗鲁的问题。感谢所有的帮助,并为我向 Apache 和 Sun 工程师问好 ;)
  • @WizardOfOdds:很抱歉,这个问题很简短且令人困惑。我很遗憾没有像其他人那样聪明,但我无法像写的那样解析问题。我试图理解这个问题。由于缺乏深刻的洞察力,我不得不问这个问题是关于什么的。再次,我很抱歉没有聪明和有见地。
  • *是否有用于从 JVM 调用系统脚本/程序的 Java API?

标签: java bash shell scripting


【解决方案1】:

【讨论】:

  • 谢谢,我使用了一些来自 Apache commons 的项目,但我从未发现过这个。
【解决方案2】:

为什么不直接使用标准的ProcessBuilder 类...它可以很好地处理调用脚本。这是post showing how this can be used to call a command via bash。

【讨论】:

    【解决方案3】:

    使用Runtime.getRuntime().exec(...),除非您需要知道要传递给系统程序的名称和参数。

    【讨论】:

    • 您好,我特意要 API,因为我的下一个工作将大量使用调用程序,并作为探索是否尝试编写的一部分。
    猜你喜欢
    • 2010-10-04
    • 1970-01-01
    • 2012-04-07
    • 2022-01-16
    • 2016-03-16
    • 2010-11-12
    • 2011-07-07
    • 2012-05-25
    • 2011-05-11
    相关资源
    最近更新 更多