PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [bash] frage zu for-schleife (Dateinamen mit Leerzeichen)



nasontyphalt
03-12-2006, 13:53
Moin!

Ich habe vor in einem Script per for-Schleife alle Dateien in einem Verzeichnis und dessen Unterverzeichnissen samt relativem Pfad einzusammeln.


for datei in `find . *`
do
echo $datei
done

Das Problem dabei sind die Dateinamen, die Leerzeichen enthalten. Da for nicht Zeilen- sondern Wortweise arbeitet werden die Dateinamen dieser Dateien zepflückt. Lässt sich das irgendwie vermeiden?

tschloss
03-12-2006, 17:33
Schon mal "find -exec" (man find) versucht?

Thomas

peschmae
04-12-2006, 10:14
find -exec ist hier wie erwähnt die Methode der Wahl.

In anderen Fällen kann man dem Problem auch durch Setzen des IFS abhelfen:


IFS="
"


MfG Peschmä