先粘贴java文件
public class javas{
public static void main(String[] args) throws Exception{
String path = "./shells.sh";
//添加执行权限,如果文件本身有执行权限,则可以忽略
String command1 = "chmod 777 ./shells";
Runtime.getRuntime().exec(command1).waitFor();
Runtime.getRuntime().exec(shpath).waitFor();
}
}
//其实java里就一行代码, Runtime.getRuntime().exec(“linux命令”).waitFor();再粘贴shell文件
#!/bin/bash
echo "hello world yes" > a.txt
这里注意一个地方,要输出到一个文件里,如果只写echo "hello world yes",会发现很郁闷的事,执行./shells时输出"hello world yes",
执行java javas时不报错,但没有任何输出。我是菜鸟,不太清楚,估计是输出到jdk那些什么的log里了。
当写完了这两个文件之后,输入命令
javac javas.java
java javas
之后,ls,发现当前目录里多了一个a.txt,
vi a.txt
里面是hello world yes