[g] 2 Programme starten -> Beide Programme schließen wenn 1

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Patsche
Beiträge: 3262
Registriert: 21.06.2013 01:47:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: /home/10001101001

[g] 2 Programme starten -> Beide Programme schließen wenn 1

Beitrag von Patsche » 10.03.2015 17:13:26

Hi,

bezugnehmend auf dieses Thema:
-> viewtopic.php?f=15&t=154341
Ich möchte gerne ein Shellskript erstellen, welches Debianunclutter und ein Spiel startet. Bisher nutze ich diesen Befehl:

Code: Alles auswählen

/home/marco/Spiele/MouseCraft/game/MouseCraft.x86 & unclutter -idle 0.001 -jitter 1000 
Das bedeutet das Spiel startet und der Mauszteiger wird unsichtbar. Nun möchte ich aber, dass unclutter wieder "gekillt" wird, wenn ich das Spiel Mousecraft beende. Ist das irgendwie möglich?
Zuletzt geändert von Patsche am 10.03.2015 19:41:09, insgesamt 1-mal geändert.

NAB
Beiträge: 5501
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: 2 Programme starten -> Beide Programme schließen wenn 1

Beitrag von NAB » 10.03.2015 17:35:41

Öhm .. kehrt der Aufruf des Spiels wieder zurück, nachdem das Spiel gestartet wurde? Oder ist die Shell blockiert, solange das Spiel läuft?

Dann würde doch einfach
unclutter
MouseCraft.x86
killall unclutter

reichen.
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

uname
Beiträge: 12402
Registriert: 03.06.2008 09:33:02

Re: 2 Programme starten -> Beide Programme schließen wenn 1

Beitrag von uname » 10.03.2015 17:42:06

Vielleicht auch so:

Code: Alles auswählen

programm1&
pid=$!
programm2
kill $!

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: 2 Programme starten -> Beide Programme schließen wenn 1

Beitrag von rendegast » 10.03.2015 17:45:03

/home/marco/Spiele/MouseCraft/game/MouseCraft.x86 & unclutter -idle 0.001 -jitter 1000

Code: Alles auswählen

TMPf=$(tempfile)

/sbin/start-stop-daemon -S -m -p $TMPf -b -exec /usr/bin/unclutter --  -idle 0.001 -jitter 1000
# siehe 'man start-stop-daemon' und init-Skripte

~/Spiele/MouseCraft/game/MouseCraft.x86
# hoffend, daß sich das nicht aus dem Skript hier herauslöst, ala NAB

pkill -F $TMPf
rm $TMPf
Zuletzt geändert von rendegast am 10.03.2015 17:58:17, insgesamt 1-mal geändert.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

NAB
Beiträge: 5501
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: 2 Programme starten -> Beide Programme schließen wenn 1

Beitrag von NAB » 10.03.2015 17:49:33

uname, steh ich auf dem Schlauch, oder muss das "kill $pid" heißen?
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

uname
Beiträge: 12402
Registriert: 03.06.2008 09:33:02

Re: 2 Programme starten -> Beide Programme schließen wenn 1

Beitrag von uname » 10.03.2015 19:12:52

Klar. Habe ich falsch gefunden und falsch kopiert. Stammt noch von meinem Iceweasel-Auto-Restart unter Debianmatchbox-window-manager von 2011. Noch so ein Projekt, welches ich nicht umgesetzt habe ;-)

Also eher so hoffe ich.

Code: Alles auswählen

programm1&
pid=$!
programm2
kill $pid

Benutzeravatar
Patsche
Beiträge: 3262
Registriert: 21.06.2013 01:47:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: /home/10001101001

Re: 2 Programme starten -> Beide Programme schließen wenn 1

Beitrag von Patsche » 10.03.2015 19:40:20

uname hat geschrieben:

Code: Alles auswählen

programm1&
pid=$!
programm2
kill $pid
Jeah. It works! Thx :D

Antworten