PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Datei Nummerierungslücken feststellen



npjnpj
13.12.2006, 15:15
In einem Directory habe ich eine Anzahl von Files, in deren Namen unter anderem eine Durchnummerierung enthalten ist. Beispiele:

FGDSTC004.trf
FGSE4C005.trf
F5SC3C006.trf
usw.

Die Nummerierung ist die dreistellige Zahl direkt vor dem Punkt der Dateiextension.

Mein Problem ist, dass ich feststellen will, ob die Dateinamen in Bezug auf diese Nummern Lücken enthalten.
Dabei können die Anfangsnummern entweder niedrigstens mit 001 beginnen, oder auch mit einer beliebigen anderen Zahl.

Kann mir jemand einen Tip geben?

Xanti
13.12.2006, 17:01
Auf die Schnelle:

check.sh


A=($(ls -1 *[0-9][0-9][0-9].trf | sed -n 's/^.*\([0-9]\{3\}\)\.trf/\1/; s/0*//p' | sort -n))
for ((i=${A[0]}; i<=${A[${#A }-1]}; i++)); do
cur=$(printf "%.3i\n" $i)
ls *${cur}.trf > /dev/null 2>&1 || echo "${cur} fehlt"
done


und dann das Shellskript im entsprechenden Verzeichnis aufrufen.

Gruss, Xanti

edit: Doh, ich sehe gerade, dass es sich um Files und nicht um Zeilen eines Files handelt. Änderung folgt.
edit2: Korrigiert.

npjnpj
14.12.2006, 08:13
Vielen Dank,
Werde ich gleich einmal ausprobieren.