以下のプログラムからシェルスクリプトを実行したいのですが、何も実行されないようです。同じコマンドをLinuxターミナルで直接実行しましたが、正常に動作するので、Javaコードだと思います。ご覧のとおり、私は最初にPrintWriterを使用してシェルスクリプトにコマンドを書き込んでいましたが、これはシェルスクリプト自体の実行には影響しないと思います。どんな助けでもいただければ幸いです!
public static void main(String[] args) {
// TODO Auto-generated method stub
String nfdump = "nfdump -o csv -r /home/shane/Documents/nfdump/nfcapd.201211211526>blank.txt";
try {
FileWriter fw = new FileWriter("/home/shane/Documents/script.sh");
PrintWriter pw = new PrintWriter(fw);
pw.println("#!/bin/bash");
pw.println(nfdump);
pw.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
Process proc = null;
try {
proc = Runtime.getRuntime().exec("sh /home/shane/Documents/script.sh");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}