Script pausieren bis Bedingung erfüllt ist

  • Ersteller Christian_Hofmann
  • Erstellt am
C

Christian_Hofmann

Grünschnabel
Hallo zusammen,

ich habe einmal eine Frage betreffend einen kleinen Script. Ich baue mir gerade ein kleines Linux Live System für meine digitale Sakralorgel. Dieses liegt auf einem USB Stick und ein Thinclient startet von diesem. Als Software nutze ich Aeolus.

Problem ist nun das ich mit Shellscripten so überhaupt keine große Ahnung habe. Was ich machen möchte ist das dieser Script nach dem start automatisch ausgeführt wird. So weit kein Problem. Im ersten Schritt wird Aeolus gestartet. Die Software braucht einen Moment bis sie einen Midi Eingang zu Verfügung stellt. Dann soll der Script die Midi Geräte mit Aeolus verbinden mittels aconnect. Hier einmal das was ich habe:

Code:
#!/bin/bash
aeolus -A -d hw:0 -n 2 -p 512 -r 44100 -S /home/login/stops-0.3.0 &
aconnect 24:0 128:0
aconnect 26:0 128:0
aconnect 27:0 128:0
aconnect 35:0 128:0
exit 0

Problem ist das acconect ja erst ausgeführt werden soll wenn Aeolus bereit ist, eine schmutzige Lösung wäre einfach ein Sleep einzusetzen aber wenn dann mal aus welchen Gründen auch immer etwas länger dauert ist es doof. Wie kann ich auf einfache Art eine Schleife mit Abfrage realisieren das aconnect erst ausgeführt wird wen ein "aconnect -o | grep aeolus" eine Ausgabe wie "client 128: 'aeolus' [type=user,pid=22239]" gibt? alles in der Eckigen Klammer kann sich ändern. Also würde die Prüfung auf das Wort aeolus reichen.

Ich bedanke mich bereits für hilfreiche Unterstützung.
 

Ähnliche Themen

Problem mit Apache2 + MySQL Server

Server-Monitoring mit RRDTool

Zurück
Oben