当前位置: 首页 > 面试题库 >

如何使用Java执行Windows命令-更改网络设置

越信鸥
2023-03-14
问题内容

在Java中,我希望能够执行Windows命令。

有问题的命令是netsh。这将使我能够设置/重置我的IP地址。

请注意,我不想执行批处理文件。

我想直接执行这些命令,而不是使用批处理文件。这可能吗?

这是我实施的解决方案,以供将来参考:

public class JavaRunCommand {
    private static final String CMD = 
        "netsh int ip set address name = \"Local Area Connection\" source = static addr = 192.168.222.3 mask = 255.255.255.0";
    public static void main(String args[]) {

        try {
            // Run "netsh" Windows command
            Process process = Runtime.getRuntime().exec(CMD);

            // Get input streams
            BufferedReader stdInput = new BufferedReader(new InputStreamReader(process.getInputStream()));
            BufferedReader stdError = new BufferedReader(new InputStreamReader(process.getErrorStream()));

            // Read command standard output
            String s;
            System.out.println("Standard output: ");
            while ((s = stdInput.readLine()) != null) {
                System.out.println(s);
            }

            // Read command errors
            System.out.println("Standard error: ");
            while ((s = stdError.readLine()) != null) {
                System.out.println(s);
            }
        } catch (Exception e) {
            e.printStackTrace(System.err);
        }
    }
}

问题答案:
Runtime.getRuntime().exec("netsh");

请参阅运行时
Javadoc。

编辑:稍后由leet给出的答案表明,现在不建议使用此过程。但是,根据DJViking的评论,情况似乎并非如此:Java
8文档
。该方法未弃用。



 类似资料:
  • 我试图在windows上运行的jenkins slave上使用groovy执行cmd/c echo hello。 这是我的groovy: 我可以在作业日志中看到它确实在Windows从站上运行:“在WINDOWS-SLAVE-1上运行” 但我得到一个错误:<代码>java。io。IOException:错误=2,没有这样的文件或目录 如果我尝试像这样运行linux,它可以正常工作。给我看我主人的文

  • 当在下面运行时,将打开代码提示符,并显示java版本信息。我想打印java版本信息。请帮帮我

  • 问题内容: 我试图便宜一些,并在Java中执行本地系统命令()。我想从中获取输出并将其存储在String中。最好的方法是什么?当前代码: 问题答案: 你的方法与我可能要做的事情并不遥远: 当然,请处理你关心的任何异常情况。

  • 在Linux shell上,我们可以在一行中执行sql命令,如multiline: 但是sql脚本中的multiline在Windows中似乎不起作用。 如何在Windows中执行多行sql语句?mysql多行是否有某种? 当我使用echo并将其管道传输到时,输出的格式不是表 它只是输出 我希望得到以下输出:

  • 我正在尝试从命令行运行liquibase更新。然而,我的changelog文件中有一个customChange,即一个实现liquibase的Java文件。改变风俗自定义更改。通过Spring运行时,更新成功。然而,当我试图通过命令行使用 我收到以下错误: Liquibase Community 3.8.6,运行Liquibase时出现意外错误:Liquibase。解析器。果心ParsedNode

  • 本文向大家介绍java执行windows下cmd命令的方法,包括了java执行windows下cmd命令的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java执行windows下cmd命令的方法。分享给大家供大家参考。 具体实现代码如下: 例如: cmd /c dir 是执行完dir命令后关闭命令窗口。 cmd /k dir 是执行完dir命令后不关闭命令窗口。 cmd /c st