• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Dateinamen auf String überprüfen

Hallo

ich möchte aus einem bestimmten Verzeichniss alle sich darin befindenden Datein auf einen String überprüfen
und zwar genau die 5 und 6 stelle des Dateinamens, leider hab ich nicht mal einen ansstz wie ich alle Dateien überprüfen lassen kann.

Code:
CHECKSTRING=09
WORKDIR=/home/user

# wenn man die dateinamen überprüft könnte man ja mit  | cat -c 5,6 == $CHECKSTRINGdie stellen checken
# aber ich weiß nicht wie man alle Dateien in dem Verzeichnis überprüfen lassen kann egal wie viele es sind & ausschlislich Dateien keine Ordner
# wahrscheinlich erstmal irgendwie nen "find -type f" auf das verzeichen und das dann in nerfor schleife durchlaufen lassen

kann mir jemand helfen

ich hab da was aber es funktioniert nicht

Code:
CHECKSTRING=09
WORKDIR=/home/user
DATEN=`find $WORKDIR -type f`

for part in $DATEN; do
     if [ `$part | cut -c 5,6` == $CHECKSTRING ]
     then
     echo "hat geklappt"
     else
     echo "hat nicht geklappt"
     fi
done

folgende fehler treten für jede Datei einzeln auf
Code:
Keine Berechtigung
 [: ==: unary operator expected
 
A

Anonymous

Gast
warum läßt du das nicht gleich mit find miterledigen ? sondern hängst noch einen Rattenschwanz an Code und Befehlen hintendran.?

Code:
find -type f -name "????09*"     # hier alle finden
find -type f ! -name "????09*"   # oder hier, alle anderen finden


robi
 
Oben