Java processbuilder 运行 cygiwn 命令
Java processbuilder run cygiwn commands
尝试使用 processbuilder 从 java 代码将代码写入 运行 cygwin 命令。不知道出了什么问题。请帮助我,感谢高级!!
以下代码
import java.io.*;
public class test_6 {
public static void main(String[] args) throws Exception {
ProcessBuilder buildercmd = new ProcessBuilder(
"cmd.exe", "/c", "cd \"D:\csi\" && dir" +
"&& dir");
ProcessBuilder buildercygwin = new ProcessBuilder(
"D:/app/Cygwin/bin/bash", "-c", "cd /cygdrive/D/csi/ && dir" +
"&& ls -l");
buildercygwin.redirectErrorStream(true);
Process p = buildercygwin.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
line = r.readLine();
if (line == null) { break; }
System.out.println(line);
}
}
}
正如您在我的代码中看到的那样,它使用 cmd 工作,但由于某些原因它不能使用 cygwin 工作。
我得到以下输出:
/usr/bin/bash: dir: command not found
尝试使用 dir
=> D:/app/Cygwin/bin/dir
的完整路径
cygwin 有一个 dir.exe,对于 windows 版本,它是一个内部命令。来源:
https://superuser.com/questions/229945/where-are-the-standard-windows-prompt-commands-files
尝试使用 processbuilder 从 java 代码将代码写入 运行 cygwin 命令。不知道出了什么问题。请帮助我,感谢高级!!
以下代码
import java.io.*;
public class test_6 {
public static void main(String[] args) throws Exception {
ProcessBuilder buildercmd = new ProcessBuilder(
"cmd.exe", "/c", "cd \"D:\csi\" && dir" +
"&& dir");
ProcessBuilder buildercygwin = new ProcessBuilder(
"D:/app/Cygwin/bin/bash", "-c", "cd /cygdrive/D/csi/ && dir" +
"&& ls -l");
buildercygwin.redirectErrorStream(true);
Process p = buildercygwin.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
line = r.readLine();
if (line == null) { break; }
System.out.println(line);
}
}
}
正如您在我的代码中看到的那样,它使用 cmd 工作,但由于某些原因它不能使用 cygwin 工作。
我得到以下输出:
/usr/bin/bash: dir: command not found
尝试使用 dir
=> D:/app/Cygwin/bin/dir
cygwin 有一个 dir.exe,对于 windows 版本,它是一个内部命令。来源:
https://superuser.com/questions/229945/where-are-the-standard-windows-prompt-commands-files