2012-04-13 4 views
3

Ich habe einen Code, der eine Datei Zeile für Zeile mit einer While-Schleife liest. Innerhalb der while-Schleife habe ich bestimmte Bedingungen. Gibt es einen Weg, mit dem ich die aktuelle Zeile überspringen und die nächste Zeile basierend auf der Bedingung lesen kann? Lassen Sie mich genau sein:Überspringen einer Zeile und Lesen einer anderen Zeile in Shell-Skript während Schleife

while read Line 
do 
    //some sample conditions 
    a=$Line 
    if [ "a" == "b" ] 
     //i want to go to the next line from this point. 
done < **inputfile** 

Jede Hilfe wäre willkommen.

Antwort

1

Wie wäre:

while read Line 
do 
    # some sample conditions 
    a=$Line 
    if [ "$a" == "$b" ] # I assume this is not "a" == "b" 
     # i want to go to the next line from this point. 
     read Line 
     a=$Line 
done < **inputfile** 
+0

die if-Bedingung kann alles sein. Was ich will ist, basierend auf der Bedingung, Datei lesen sollte von der nächsten Zeile und sofort danach beginnen. Das Skript, das Sie angegeben haben, liest die nächste Zeile, aber es wird nur für Zeilen nach der Bedingung angezeigt. Was ich möchte, ist, basierend auf der Bedingung, sollte die nächste Zeile gelesen werden und die Operationen sollten von Anfang an beginnen. – parameswar

+0

Wenn ich Ihren Kommentar richtig verstehe, ist Scibuff's Antwort, was Sie suchen. Könnten Sie sich bitte etwas Zeit nehmen, um es zu akzeptieren oder zu kommentieren, warum das nicht die Antwort ist, nach der Sie suchen? – Chaitanya

+0

Entschuldigung für die Verspätung, scibuff's Antwort hat funktioniert! – parameswar

Verwandte Themen