Bash-Script: Schleife durch alle Unterverzeichnisse?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Hallo

*.ufraw ist doch kein Kommando. Meinst Du eher:

ls -1 *.ufraw

Was eine Auflistung aller Dateien bewirkt die nach einem Punk den String ufraw hat (cutechick.ufraw oder hairypussy.ufraw.jpg z.B.)

  1. Du willst einmal die 3. Zeile haben die in Variable $ZEILE3 stehen soll
  2. Dann nochmal Zeile 3, davon aber nur die Anzahl der Zeichen darin die in Variable $LAENGE stehen soll.
  3. Danach wird es krude, Du beginnst zu rechnen, mit Bytes und Zahlen (29 und 22) von denen ich nicht weiß woher die kommen.

Da Du gleich zweimal das annähernd gleiche Kommando benutzt:

head -n3 "$i" | tail -1l)

bietet es sich hier an, diesen Wert gleich in eine Variable zu schreiben um den Aufwand nicht mehrfach auszuführen.

LAENGE=$(echo $ZEILE3 | wc -m)

Zeig doch mal wie die Ausgangsdatei ist und im Gegensatz welche Informationen daraus wie aussehen sollen.

Linuxhase

Woher ich das weiß:eigene Erfahrung – Ich benutze seit 2007 Linux und habe LPIC101 und LPIC102
Linuxhase  13.11.2015, 06:01

Her kommt wohl keine Rückmeldung mehr?

0

Du kannst zum Einen alle zu behandelnden Dateien per ls auflisten und die Ausgabe als Argument für Dein Skript verwenden oder alle Verzeichnisse auflisten und jeweils die darin enthaltenen Dateien verarbeiten.

Kein Bedarf für Rekursion.