Zum Inhalt

Ubuntu: Akustische Signale für länger laufende Befehle

So manche Aktion auf der Kommandozeile braucht ihre Zeit. Um zügig voran zu kommen kann man entweder immer wieder nachschauen ob das Programm seine Arbeit erledigt hat oder man bleibt gleich vor dem Computer und wartet. Da man meist besseres zu tun hat sind beide Optionen nicht ideal.

Seit langer Zeit gibt es unter Linux den Befehl beep. Hängt man diesen mit zwei & ans Ende einer Befehlszeile wird zuerst der eigentliche Befehl ausgeführt und am Ende ertönt ein schriller Ton. Auf einem aktuellen Ubuntu kann man das Paket beep zwar nachinstallieren, doch bleibt der Lautsprecher stumm. Das von beep benötigte Kernelmodul ist fehleranfällig und daher in Ubuntu deaktiviert. Man kann zwar immer noch in die Kernel-Module abtauchen und in der Datei /etc/modprobe.d/blacklist.conf die richtige Zeile auskommentieren. Im besten Fall kriegt man einen schrillen Ton zurück und im schlechtesten Fall hat man ein unbrauchbares System. Beides ist es nicht Wert diese Option zu verfolgen.

Eine bessere Alternative

Viel angenehmer wäre es wenn ein angenehmerer Ton abgespielt werden könnte. Da mittlerweile jeder Desktop seine eigene Sammlung an Systemklängen und Melodien mitbringt findet man sicher eine Audio-Datei die als Hinweiston deutlich angenehmer ist.

Hat man die passende Audio-Datei gefunden braucht es einige kleine Ergänzungen an der .bashrc. Mit dem Editor seines Vertrauens kann man diese Datei im eigenen Home-Verzeichnis öffnen und am Ende diese Zeilen einfügen:

export BEEP_SOUND=/usr/share/sounds/gnome/default/alerts/glass.ogg
alias beep='paplay $BEEP_SOUND'

Wichtig: Der Pfad zur Audio-Datei muss entsprechend angepasst werden!

Sobald diese Datei gespeichert ist kann man die Einstellungen mittels source ~/.bashrc neu laden (oder ein neues Terminal öffnen). Führt man nun diesen Befehl aus ertönt nach 3 Sekunden der Hinweiston:

sleep 3 && beep

So lange der eigentliche Befehl korrekt abläuft und eine 0 als Return-Wert liefert ertönt der gewünschte Ton. Soll dies auch im Fall eines Fehlers passieren muss man noch das Programm wait bemühen:

sleep 3 & wait; beep

Fazit

Kleine Helfer kommen oft in ganz einfachen Befehlen daher. Nur bis man die richtige Idee oder den passenden Ansatz hat dauert es meist ein wenig länger...