Bash-Script: Problem mit while-Schleife
lima-city → Forum → Programmiersprachen → Sonstige Programmiersprachen
abfrage
anweisung
benutzt danke
bestimmte funktion
code
datum
dollar
eingabe
folgendes problem
genommen code
geschrieben code
inhalt
schleife
springen
tick
ticks
variable abfrage
variablen abfrage
zeichen
zeile
- 
    
    Hi Leute,
 
 folgendes Problem; ich habe ein kleines Skript um einige große Daten mit einer kleinen Menüsteuerung zu packen geschrieben.
 
 #!/bin/bash echo 'Soll gezippt werden? y(es)/n(no)/v(iew)' while [ '$abfrage' != 'exit' ] do read abfrage case $abfrage in y) echo 'ZIP' dozip echo 'ZIP - fertig!' ;; n) echo 'Kein ZIP --> Exit program' ;; v) echo 'VIEW' viewfiles ;; *) echo 'Befehl nicht bekannt' ;; esac done
 
 Das Problem ist, dass die case-Fälle alle funktionieren, jedoch bei Eingabe von "exit" das Skript nicht beendet wird.
 Hat jemand eine Idee wo mein Fehler liegt? Ich könnte auch per "exit)" die Variable "$abfrage" in der case Anweisung abfragen und per "exit 0" beenden, jedoch möchte ich das über die while-Schleife regeln. :( Ich möchte nicht aus der laufenden while-Schleife springen. Gibt es da noch eine andere Möglichkeit?
 
 Danke & Gruß
- 
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden! lima-city: Gratis werbefreier Webspace für deine eigene Homepage 
- 
    
    Super, das funktioniert!
 
 Zeile 4:
 while [ "$abfrage" != 'exit' ]
 
 PS: Könntest du mir kurz den Unterschied erklären? Es muss eine bestimmte Funktion haben, wenn man die Quotes an Stelle der Ticks benutzt. Danke dir!
- 
    
    Die Ticks führen ein full quoting aus, sprich alle Zeichen außer dem Tick selbst werden wörtlich genommen:
 '$abfrage'
 bezeichnet die Zeichenkette Dollar-abfrage und nicht den Inhalt der Variablen abfrage.
 
 Die Quotes führen ein partial quoting aus, sprich alle Zeichen außer Dollar ($), Backtick (`) und Escape (\) werden wörtlich genommen:
 "$abfrage"
 bezeichnet somit den Inhalt der Variablen abfrage.
- 
    
    Alles klar... das hilft mir und meine Verständnis! =) Sehr gute Erklärung übrigens.
- 
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden! lima-city: Gratis werbefreier Webspace für deine eigene Homepage