Java ProcessBuilder可以在Linux中顺序执行多个命令
发布时间:2020-05-25 15:03:31 所属栏目:Java 来源:互联网
导读:我想通过使用ProcessBuilder类的 Java应用程序顺序执行2个或更多命令.我尝试过多个选项,如其他响应/论坛中的建议,但没有运气. 这是我试过的事情: ProcessBuilder processBuilder = new ProcessBuilder(ls, ;, pwd); 给我以下错误: 错误:ls:;:没有这样的
|
我想通过使用ProcessBuilder类的 Java应用程序顺序执行2个或更多命令.我尝试过多个选项,如其他响应/论坛中的建议,但没有运气. 这是我试过的事情: ProcessBuilder processBuilder = new ProcessBuilder("ls",";","pwd");
给我以下错误: 错误:ls:;:没有这样的文件或目录 ProcessBuilder processBuilder = new ProcessBuilder("ls","&&","pwd");
给我类似的错误: 错误:ls:&&:没有这样的文件或目录 List<String> command = new ArrayList<String>();
command.add("ls");
command.add(";");
command.add("pwd");
ProcessBuilder processBuilder = new ProcessBuilder(command);
给我以下错误: 错误:ls:;:没有这样的文件或目录 我的操作系统是Linux / Mac OSX. 解决方法您的方法相当于使用指定的参数调用ls.在Bash符号中,您正在运行的是:ls ';' pwd ls '&&' pwd 如果要使ls和pwd作为单独的命令运行,可以使用Bash(或另一种shell语言)将它们包装成一个命令: bash -c 'ls ; pwd' 你可以这样称呼: ProcessBuilder processBuilder = new ProcessBuilder("bash","-c","ls ; pwd"); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
