PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Script -- Pause + Tasteneingabe



Rava
04.09.09, 11:23
Hallo,

ich möchte mir ein Script schreiben, das neben einer Infozeile einige Sekunden wartet, und wenn der User nichts macht, seine Default-Aufgabe macht.
Wenn der User in der Wartezeit allerdings eine bestimmte Taste drückt, soll das Script etwas alternatives machen.
Abbruch kann z.B. mit "q" oder Strg+C erfolgen.

Mein Problem: Ich kenne soweit nur sleep, aber das reagiert ja nur auf Strg+C und nicht auf andere Tastatureingaben, somit nur auf die Möglichkeit eines Abbruches.
Natürlich könnte ich den Abbruch abfangen und dann ein Menü anbieten... Das ist die momentan einzige Alternative die ich wüsste und nicht wirklich elegant...

"read whatever" möchte ich auch nicht verwenden, das ja defaultmäßig das Script zu 99,9% das machen soll, was es immer macht, und so der User immer zumindest "Enter" eingeben müsste.

Gibt es ein (am besten schon standardmäßig bei Linux mit installiertes) Programm für die Konsole oder ein bash-Befehl, der mir da weiterhelfen kann und genau das liefert, was ich brauche?

Alle Suche war bisher ergebnislos... ich weiß auch nicht so recht, welche Such-Begriffe ich wählen soll...


P.S. Ich hoffe, dies ist das richtige Unterforum... ich habe kein wirklich 100% passendes gefunden. -_-

drcux
04.09.09, 12:05
read -t 1

(timeout)

Rava
04.09.09, 12:09
read -t 1

(timeout)

Ohhhhh :o read kann sowas.... man sollte auch nach vielen Jahren Linux immer man pages lesen... und man pages lesen... -_-

Danke für den Tip...

Ist zwar immer noch nicht das was ich mir erhofft habe (eben eine Tastatur-Abfrage, aber OHNE Enter-Eingabe zusätzlich) aber immerhin besser als Strg+C abzufangen....

drcux
04.09.09, 12:40
read -n 1
[-n nchars]

Rava
05.09.09, 20:46
read -n 1
[-n nchars]

Dank auch Dir...

...

und zum ersten Mal "?" als Suche in man (hier man bash) nach "BUILTIN C" vom Ende her verwendet...
Bisher hab ich es nur per "/" von oben her durchsucht... aber gerade in man pages ist das gewünschte, wenn zu oft gefunden, meist eher am Ende der manpage.

Still: Linux rulez... :) It got all the tools to solve all your IT problems. And may more.