Ich möchte die folgenden Befehle auszuführen: -Ausführen mehrerer Befehle auf der gleichen Bash über Java Runtime oder Process
# su - username
$ ssh-keygen -t rsa
3 Mal eingeben zu übergeben null ssh-keygen Optionen dann
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
$ tar xzf tarpath
$ mv untaredfile ~/somename
am Shell-Terminal, aber über Java, dh ich muss diese Befehle automatisieren, in denen Benutzername und Tarpath dynamisch über GUI zur Verfügung gestellt werden. Ich habe versucht, es mit Java Runtime, aber war nicht in der Lage, das erwartete Ergebnis jedes Mal, wenn ich rufe Runtime.getRuntime().exec("somecommand");
es erstellt eine neue Instanz dieses Befehls, so dass alle vorherigen Befehl nicht in ihm existiert.Wie Wechsel zu Benutzer. kann mir jemand jede Lösung entweder ein eigenes Shell-Skript oder durch ProcessBuilder vorschlagen.
aber zuerst muss ich den Benutzer mit su Befehl wechseln ... ?? – Ap00rv
können Sie 'su-Benutzername -c' verwenden, um' bash -c' zu ersetzen – Wilson
hey danke Mann Ich habe es versucht, aber es hat nicht funktioniert .... – Ap00rv