Taste "x" binden um Bash shell Script zu beenden

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
ren22

Taste "x" binden um Bash shell Script zu beenden

Beitrag von ren22 » 28.02.2019 16:27:17

Hallo,

wie kann man, sagen wir die Taste "x" binden, dass ein bash shell Script, was im Hintergrund läuft, dann beendet bzw. sofort terminiert wird ?
Terminal wäre "xterm" und und FensterManager "lightdm" bzw. "xfce4"
Danke

Benutzeravatar
heinz
Beiträge: 535
Registriert: 20.12.2007 01:43:49

Re: Taste "x" binden um Bash shell Script zu beenden

Beitrag von heinz » 28.02.2019 17:07:01

Hallo ren22,

da gibt es, wie so oft, viele Moeglichkeiten.
Hier ist eine davon:

Das Script, welches im Hintergrund laeuft...

Code: Alles auswählen

#!/bin/bash

function Ende
{
# Aufraeumen und beenden
	rm "/tmp/scriptpid"

	exit 0
}

# Hauptteil
trap 'Ende' '10'
echo "$$" >"/tmp/scriptpid"

# Mach irgendwas, die ganze Zeit...
while true
do
	echo -ne '\a'
	sleep 1
done
Und zum beenden des Scriptes wird dieser Befehl ausgefuehrt:

Code: Alles auswählen

kill -s 10 $(</tmp/scriptpid)
Mit "lightdm" bzw. "xfce4" kenne ich mich leider nicht aus aber im Netz gibt es viele Anleitungen, wie man einem Befehl eine Tastenkombination zuweist.
z.B.
https://asciich.ch/wordpress/tastenkomb ... inrichten/

Gruss, heinz

Korodny
Beiträge: 704
Registriert: 09.09.2014 18:33:22
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Taste "x" binden um Bash shell Script zu beenden

Beitrag von Korodny » 28.02.2019 19:56:43

Wie heinz schon erläutert, brauchst du eine Befehlszeile, mit der dein Skript abgebrochen wird - um zu wissen, wie die aussehen soll bzw. wie du sie selbst zusammenstellen kannst, müssten wir aber mehr über das Script wissen. Wenn's nicht zu lange ist kannst du es ja direkt hier posten.

Bei XFCE kannst du unter Einstellungen→Tastatur im Reiter "Tastenkürzel für Anwendungen" dann eine Tastenkombination festlegen, mit der der Befehl ausgeführt wird. "x" ist da allerdings wenig empfehlenswert - dann könntest du ja in keiner Anwendung mehr "x" eingeben ;) Ich weiß gar nicht, ob das Einstellungsprogramm solche Tastenkürzel überhaupt zulässt. Nimm besser Steuerung-Alt-X oder etwas in der Richtung: Steuerung-X a bereits das globale Tastenkürzel für "Ausschneiden".

Antworten