Hallo Liebe Shell Experten!
Ich sitze vor einer Aufgabe die ich alleine leider nicht lösen kann (so weit bin ich noch nicht mit shell)
Ich möchte ein Shell script erstellen, das in einen bestimmten Ordner die filenamen prüft und mir einen string mit den sequenzen (von-bis) erstellt.
Ist schwer zu erklären, daher versuche ich es so:
Ich habe einen Ordner in den mehrere dpx (Bilddateie) liegen z.B.:
333.0000005.dpx
333.0000006.dpx
333.0005002.dpx
333.0005003.dpx
333.1112201.dpx
333.1112202.dpx
333.1112203.dpx
jetzt möchte ich, das das shell script diesen Ordner (z.B.333) durchsucht und mir am ende folgenden String ausgibt:
0000005-0000006,0005002-0005003,1112201-1112203
also immer "von-bis","von-bis",...
habt Ihr vielleicht eine Lösung für mich?
Ich wäre euch unendlich dankbar, da dies meinen Arbeitsaufwand unglaublich verringern würde.
Schönen Gruß
Mike
Brauche Shell script Hilfe - Dateinamen auslesen und sequenzen im string speiche
-
- Posts: 430
- Joined: 03. Mar 2006 23:16
Soll das Kriterium für die "von-bis"-Bereiche das "Null - Nicht-Null"-Schema sein?
Oder die Gleichartigkeit mehrere Stellen, also "111" oder "500" oder ...?
Ich denke hierbei daran, die Sortierungen einzuschränken, damit zBsp. nicht "dumm" alle möglichen FOR-Schleifen durchgangen werden müssten.
Wie intelligent müssen denn die Muster erstellt werden, bzw. ist das Ergebnis in Maßen vorher bekannt?
Nach dem Aufstellen dieser Muster als Modell für die "von-bis"-Bereiche:(Wenn die Muster komplizierter ausfallen müsste find bemüht werden > Die Sortierung der Ausgabe von find und ls sind teilweise unterschiedlich!)
Aus dieser Ausgabe werden mir 'head -n1' und 'tail -n1' der von- und bis-Wert gelesen.
Oder die Gleichartigkeit mehrere Stellen, also "111" oder "500" oder ...?
Ich denke hierbei daran, die Sortierungen einzuschränken, damit zBsp. nicht "dumm" alle möglichen FOR-Schleifen durchgangen werden müssten.
Wie intelligent müssen denn die Muster erstellt werden, bzw. ist das Ergebnis in Maßen vorher bekannt?
Nach dem Aufstellen dieser Muster als Modell für die "von-bis"-Bereiche:
Code: Select all
for i in $MusterListe; do
ls ... $i
done
Aus dieser Ausgabe werden mir 'head -n1' und 'tail -n1' der von- und bis-Wert gelesen.
mfg komsomolze