java代码如何执行shell命令行

2024-09-22 06:17:13 编辑:抖狐科技 来源:摘自互联网

使用 java 执行 shell 命令可以按以下步骤进行:导入必要库。创建 processbuilder 对象。重定向输出和错误流。启动进程。获取输出并打印到控制台。等待进程完成。

java代码如何执行shell命令行

如何使用 Java 执行 Shell 命令

要使用 Java 执行 Shell 命令,可以使用以下步骤:

  1. 导入必要的库

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;

    登录后复制

  2. 创建 ProcessBuilder 对象

    立即学习“Java免费学习笔记(深入)”;

    ProcessBuilder pb = new ProcessBuilder("YOUR_SHELL_COMMAND");

    登录后复制

  3. 重定向输出和错误流

    pb.redirectOutput(ProcessBuilder.Redirect.INHERIT);
    pb.redirectError(ProcessBuilder.Redirect.INHERIT);

    登录后复制

  4. 启动进程

    Process process = pb.start();

    登录后复制

  5. 获取输出

    BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
    String line;
    while ((line = reader.readLine()) != null) {
     // 逐行读取输出并打印到控制台
     System.out.println(line);
    }

    登录后复制

  6. 等待进程完成

    process.waitFor();

    登录后复制

示例代码:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class ShellCommandExecutor {

    public static void main(String[] args) {
        String command = "ls -l"; // Shell 命令

        // 按照上述步骤执行命令
        ProcessBuilder pb = new ProcessBuilder(command);
        pb.redirectOutput(ProcessBuilder.Redirect.INHERIT);
        pb.redirectError(ProcessBuilder.Redirect.INHERIT);

        try {
            Process process = pb.start();
            BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }
            process.waitFor();
        } catch (IOException | InterruptedException e) {
            e.printStackTrace();
        }
    }
}

登录后复制

以上就是java代码如何执行shell命令行的详细内容,更多请关注抖狐科技其它相关文章!

本站文章均为抖狐网站建设摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,我们谢绝直接复制和抄袭!感谢...
我们猜你喜欢