[英]run linux command from java
我试图从jar 文件运行 linux 命令,但我总是收到此错误:
java.io.IOException:无法运行程序“ls”:错误=13,权限被拒绝。
这是我的代码:
String s;
Process p;
String cmd= "ls";
try {
Runtime run = Runtime.getRuntime();
p = run.exec(cmd);
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((s = br.readLine()) != null){
System.out.println("line: " + s);
}
p.waitFor();
System.out.println ("exit: " + p.exitValue());
p.destroy();
} catch (Exception e) {
System.out.println(e);
}
谢谢你的时间。
更新:对我来说,我的解决方案是:我必须重新安装操作系统和 JDK,现在一切正常。
我希望你熟悉vi
。 如果没有,请忽略下面给出的第三个命令,只需将Main.java
文件复制到/Users/your-user-directory/
cd ~
pwd
vi Main.java
javac Main.java
java Main
主程序
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) {
String s;
Process p;
String cmd = "ls";
try {
Runtime run = Runtime.getRuntime();
p = run.exec(cmd);
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((s = br.readLine()) != null) {
System.out.println("line: " + s);
}
p.waitFor();
System.out.println("exit: " + p.exitValue());
p.destroy();
} catch (Exception e) {
System.out.println(e);
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.