Ausführen eines Shell-Skripts aus Java-Code und Übergeben von Argumenten

Ich führe ein Shell-Skript aus einem Java-Programm aus. Ich habe es mit Runtime-Klasse implementiert. Unten ist der Code, den ich implementiert habe

final StringBuilder sb = new StringBuilder("test.sh");
sb.append("/path to/my/text file");

final Process p = Runtime.getRuntime().exec(sb.toString());

Hier ist sb ein String-Buffer-Objekt, an das ich meine Parameter anhänge und in der exec-Methode verwende. Aber das Problem ist, dass der Parameter, den ich "/ path to / my / text file" übergebe, als 4 Parameter betrachtet wird

/path
 to
/my/text
 file

Aber wenn in der Shell als test.sh "/ path to / my / text file" ausgeführt wird, wird dies als einzelner Parameter verwendet. Wie kann ich dasselbe mit Java-Code erreichen, wobei ich diesen Pfad mit Leerzeichen als einzelnes Argument betrachten muss? Jeder bitte wird sehr dankbar sein.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage