#1 19.08.2018 07:37:25

Andy@Arch
Mitglied

[erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

Baue ein interaktives Script und würde gerne die Antwortmöglichkeiten durch Fehleingabe begrenzen.
Wie mache ich es das read nur 0 bis 3 oder ja und nein als Antwort akzeptiert?

Beitrag geändert von Andy@Arch (22.08.2018 17:06:51)

Offline

#2 19.08.2018 07:49:08

niemand
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

Wie mache ich es das read nur 0 bis 3 oder ja und nein als Antwort akzeptiert?

Gar nicht, denke ich. Du kannst allenfalls im Anschluss gucken, ob die Eingabe im Bereich liegt, und entsprechend reagieren. Wie’s im Detail geht, könnte man sagen, sobald man weiß, um welche Sprache es eigentlich geht.

Offline

#3 19.08.2018 07:54:38

Andy@Arch
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

ist ein Bash Script, keine Ahnung was für eine Sprach das ist

Hab das aus der Manpage, könnte das gesuchte sein. Leider finde ich nirgends eine deutsche Übersetzung oder ein Beispiel dazu.

-N nchars return only after reading exactly NCHARS characters, unless
                EOF is encountered or read times out, ignoring any
                delimiter

Offline

#4 19.08.2018 08:15:16

niemand
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

Es liest die Anzahl der angegebenen Zeichen.

Offline

#5 19.08.2018 18:17:01

brikler
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

das sollte mit einem einfachen if else + schleife gehen, bzw mit switch() wenns so was gibt

Offline

#6 19.08.2018 22:16:49

efreak4u
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

mit einer CASE-Anweisung ist dies auch moeglich. wink

Offline

#7 19.08.2018 22:23:47

TBone
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

Hat brikler schon gesagt.
switch = case in der Bash.

Offline

#8 19.08.2018 22:35:21

efreak4u
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

wieder was gelernt... aber dann war mein Post ja nicht ganz ueberfluessig... big_smile

Offline

#9 20.08.2018 12:34:42

stefanhusmann
Moderator

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

Wobei es auch eine switch-Anweisung in bash gibt, und die case-Anweisung sogar als "deprecated" markiert ist.

Offline

#10 20.08.2018 12:39:37

schard
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

stefanhusmann schrieb:

Wobei es auch eine switch-Anweisung in bash gibt, und die case-Anweisung sogar als "deprecated" markiert ist.

Jup. Wieder was gelernt. Werde gleich erstmal meine Shellskripte refactorn.

$ man case | grep Note
       Note: the case command is obsolete and is supported only for backward compatibility.  At some point in the future it may be removed entirely.  You should use the switch command instead.

Update:
Alles zurück. Das sind die Handbuchseiten der Tcl. Betrifft also gar nicht die Bash.
In Bash gilt weiterhin case. Ein switch Kommando kennt meine bash nicht.

$ help case
case: case Wort in [Muster [| Muster]...) Kommandos ;;]... esac
    Execute commands based on pattern matching.
    
    Selectively execute COMMANDS based upon WORD matching PATTERN.  The
    `|' is used to separate multiple patterns.
    
    Exit Status:
    Returns the status of the last command executed.

Beitrag geändert von schard (20.08.2018 12:48:52)

Offline

#11 20.08.2018 16:25:46

TBone
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

schard schrieb:

Alles zurück.

Das sähe ja auch noch blöder aus: hctiws

Offline

#12 20.08.2018 17:05:10

stefanhusmann
Moderator

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

Mein Fehler, sorry.

Offline

#13 22.08.2018 17:06:06

Andy@Arch
Mitglied

Re: [erledigt] Script:wie read nur bestimmte Zeichen als Antwort möglich

Hab die Read abfrage in eine While-Schleife gepackt und die Eingabe wird mit einer If-Else-Schleife kontrolliert.

Danke schön

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Deine Antwort

Fußzeile des Forums