continue in Schleife einbauen

D

D89

Gast
Hallo alle zusammen,

ich schreibe grad an einem shell script und habe folgendes Problem:
Ich möchte, dass die beiden if Anweisungen (zeile 61 -70 und zeile 73-76)
in jeder iteration abgefragt werden. Ich weiß, dass ich continue dazu verwenden muss und eine Schleife
die einen do - done Block hat. Ich habe verschiedene Varianten probiert von while-Schleife über until-Schleife bis hin zur for-Schleife.
Hat alles leider nicht geklappt... :(

Hat irgendjemand von euch vielleicht irgend eine Idee?
Lieben Dank!

Code:
 60 shift $((OPTIND-1))
 61 if [ $iFlag -eq 1 ] ; then
 62         read -p "Do you want to delete $1?" input
 63         case $input in
 64                 [Yy])
 65                         echo " " ;;
 66                         #echo "File will delete!" ;;
 67                 *)
 68                         #echo "File wont't delete!"
 69                         exit 1 ;;
 70         esac
 71 fi
 72
 73 if [ $vFlag -eq 1 ] ; then
 74                 echo "moved $1 to ~/deleted"
 75      
 76 fi
 77
 78 while [ $# -gt 0 ] ; do
 79         checkErrors $1
 80         shift
 81 done
 

Nexus633

Eroberer
Beiträge
57
Hey,
Da du das immer wieder ausführen möchtest, benötigst du keinen continue :-).

Für jede Situation die du diese schleifen aufrufen möchtest, würde ich eine Funktion verwenden. Die erlaubt es dir den Bereich jedes mal aufzurufen wenn du ihn benötigst.

Verpacke es so:
Code:
File_dealted(){
    if [ $iFlag -eq 1 ] ; then 
        read -p "Do you want to delete $1?" input
        case $input in
            [Yy]) 
                 echo " " ;; 
                 #echo "File will delete!" ;; 
             *) 
                 #echo "File wont't delete!"
                 exit 1 ;;
        esac 
    fi
}
So kannst du die Funktion bei Bedarf aufrufen. Als Option würde ich einen return Wert in Form eines boolischen werts nehmen. Hier kannst du die Funktin in einer variabel speichern und mit einer Abfrage prüfen. Nach Prüfung gibst du deinen echo aus.

Du hast viele Möglichkeiten um nach Rom zu kommen, das ist eine :-)

Mit freundlichen grüßen
Nexus633

-
Vom Handy gesendet.

PS: am Handy ist es ziemlich schei.... Code einzureien oO. Ich hoffe du weißt wie ich den Code meine :-). Sorry Handy halt...
 
Zuletzt bearbeitet:

Ähnliche Themen

Anweisungen innerhalb Until-Schleife

Verschlüsseltes Backup-Script mit rsync

script sshpass

Shell Skript beschleunigen

HandbrakeCLI Shell Skript

Oben