Hallo, ich bin gerade dabei ein Bash Skript zu schreiben. In diesem Skript habe ich ein Array erstellt und der Inhalt des Arrays wird Zeilenweise in eine Datei geschrieben. Dazu verwende ich eine For Do Schleife:
for i in $(seq 1 $max) do echo ${array[$i]} >> $zielpfad done
$(seq 1 $max) wird verwendet um der Schleife zu sagen wie groß das Array ist. Soweit so gut. Jetzt aber zu dem Problem: Es kommt nämlich auch mal vor, dass im Array ein bestimmtes Zeichen gefunden wird, was zur Folge hat, dass diese und die nächsten 3 Zeilen nicht in die Zieldatei eingetragen werden sollen, bzw ausgelassen werden müssen. Das sieht dann in etwa so aus:
if [[ ${Array[$i]} == *"/"* ]]; then i=$(($i + 3)) fi
Hier soll wenn ein Backslash gefunden wird diese und die nächsten 3 Zeilen nicht geschrieben zu werden und ich habe halt versucht, den Zähler der For-Do Schleife um 3 zu erhöhen, aber das funktioniert so leider nicht, es wird trotzdem beim direkt nächsten Array-Eintrag weiter gemacht. Weiß jemand, wie ich das Problem lösen kann?