【问题标题】:How to fire command in Ubuntu Terminal using Java code如何使用 Java 代码在 Ubuntu 终端中触发命令
【发布时间】:2014-06-22 14:02:37
【问题描述】:

如何在 Ubuntu 中使用 java 代码通过终端选择目录并触发命令。 例如,我想选择像“cd /home/sree/tomcat/bin”这样的tomcat目录并触发像“sh shutdown.sh”和“sh startup.sh”这样的命令来使用java编码访问sh文件。 在windows操作系统中也需要上述过程的帮助。 请任何人给我一个解决方案。提前致谢

【问题讨论】:

    标签: java terminal command


    【解决方案1】:

    使用以下函数:

    java.lang.Runtime.getRuntime().exec("a-command");
    

    另外,这篇文章可能会对您有所帮助: http://blog.art-of-coding.eu/executing-operating-system-commands-from-java/

    【讨论】:

      【解决方案2】:

      您可以使用Apache Commons CLI 创建一个调用所需命令的程序(您需要为 Ubuntu 和 Windows 创建一个版本)。它提供了很大的灵活性和插入系统管道的可能性。

      之后,您将程序打包为 jar 并从您需要的目录运行它。

      【讨论】:

        【解决方案3】:

        这有两个类,

        1. java.lang.Runtime 更多详情

          http://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html

        2. java.lang.ProcessBuilder 更多详情

          http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/ProcessBuilder.html

          ProcessBuilder in Java

        我使用过流程构建器,为此您需要先创建一个流程构建器的实例并在其上调用 start 方法,然后将要执行的命令作为构造器参数传递。

        ProcessBuilder pb = new ProcessBuilder("ls");
        Process p = pb.start();
        p.destroy();
        

        【讨论】:

          猜你喜欢
          • 2014-11-02
          • 1970-01-01
          • 1970-01-01
          • 2014-07-25
          • 1970-01-01
          • 2014-07-02
          • 1970-01-01
          • 2012-03-07
          • 1970-01-01
          相关资源
          最近更新 更多