Ich habe eine Shell-Datei, die durch Java-Programm ausgeführt werden muss. Aber das Problem ist, dass die Shell-Datei nicht ausgeführt wird, weil wir normalerweise Shell-Dateien über die Befehlszeile ausführen, nachdem wir den sudo-Befehl ausgeführt haben, der wiederum nach password fragt. Gibt es eine Möglichkeit, dass ich die Shell mit Runtime.exec ausführen kann ("ksh path-to-shell-file") unter Umgehung des Befehls sudo.Anmelden in Shell als Sudo-Benutzer und Ausführen von Shell über Java
0
A
Antwort
0
Sie können Befehle in den outStream des Prozesses schreiben von Runtime.exec();
Holen Sie sich den outStream, schreiben Sie einen Befehl darauf und schreiben Sie dann "\ r \ n" zur Ausführung.
Also grundsätzlich behandeln den Prozess als eine Konsole, und schreiben Sie Befehle wie normale Konsole. Natürlich können Sie auch die in und err Streams
bekommen