Shell Skript zwei Programme ausführen?
Wenn ich in einem Shell-Skript zum Beispiel "java -jar programm" schreibe, dann startet sich ja dieses Programm wenn ich das Skript ausführe. Wie mache ich das direkt danach die nächste Zeile ausgeführt wird? (Das Programm läuft ja solange bis man es selbst beendet).
Freundliche Grüße,
Finnian
#!/bin/sh
java -jar spigot.jar nogui
./playit
So sieht das Skrip aus, beide Befehle starten aber Programme die parallel laufen sollen.
2 Antworten
Versuche es mit einem & am Ende des ersten Befehls, also
#!/bin/sh
java -jar spigot.jar nogui &
./playit
Kommt darauf an, welches Terminal du verwendest. Sagen wir, du verwendest xfce4-terminal, dann würdest du die letzte Zeile ändern zu
xfce4-terminal -e "./playit"
Ggf. ist die Option zum Ausführen eines Befehls bei anderen Terminal-Emulatoren nicht "-e" sondern eine andere.
äh dazu frag ich mal , wie startest du den dein programm , so ganz ohne code werde ich nicht schlau wo dein problem ist . das script läuft doch weiter . ggf eine eigene konsole/instanz dafür starten , wenn du das als problem meinst.
also bei mir ist es der Minecraft-Server, da ist die erste Zeile in meinem Script
java -jar spigot.jar (spigot.jar heißt die Server-Datei, mit java -jar starte ich sie). Der Server wird dann in einem Konsolenfenster gestartet.
Danach die Zeile soll wieder ein Programm in der Konsole starten, dies passiert aber erst wenn ich das Serverfenster geschlossen habe.
#!/bin/sh
java -jar spigot.jar nogui
./playit
Das steht in dem Skript drin.
Kannst du mir noch sagen, wie ich den zweiten Befehl in einem anderen Terminal öffne?