find Ausgabe in "Anführungszeichen"

A

AltBen

Grünschnabel
Hallo Unixboard-User,

ich bin neu hier im Forum und habe ein Problem:

Ich habe ein recht großes Script welches auch wunderbar funktioniert.
Jedoch Habe ich ein Problem mit Ordnern, die ein Leerzeichen enthalten.

Code:
for OUTPUT in $(find . -maxdepth 1 -type d)

Ich habe hier eine for-Schleife, welche mit allen Verzeichnissen im aktuellen Ordner arbeitet.

Problem ist, dass, wenn ich ein Leerzeichen im Ordner habe, die for-Schleife das falsch interpretiert.

Code:
Ordner:
4 drwxr-xr-x  2 root root 4096 Apr 19 08:49 test ordner
Code:
Script:
find: "./test": Datei oder Verzeichnis nicht gefunden
find: "ordner": Datei oder Verzeichnis nicht gefunden

Wie bringe ich for dazu, an jede Ausgabe "Anführungzeichen" zu setzen?
Bzw. Wie sorge ich dafür, dass das eben richtig interpretiert wird?

Vielen Dank im Vorraus
AltBen
 
Zuletzt bearbeitet:
Mit read geht das besser.

Code:
while read OUTPUT ;do
   echo "$OUTPUT"
done < <(find)
 
Danke hellfire für die Anmerkung. Jedoch habe auch auch mit dieser Variante das gleiche Problem mit den Leerzeichen
 
Ich habe das getestet mit einem Verzeichnis mit einem Leerzeichen. Bei mir funktioniert das. Ich vermute Du hast noch ein weiteres Quotingproblem in Deinem Script.
 
Ok ich denke ich muss etwas genauer werden:

Das Skript hat die Aufgabe, unsere aktuellen Ordner zu durchsuchen, um herauszufinden, welche Archiviert werden können und welche nicht. Deshalb soll das Script im Ausführungsordner durch die einzelnen Ordner gehen und diesen, falls eine Datei gefunden wird notieren. (Also es wird nur der Ordner notiert, nicht die File selbst.)

Code:
elif [[ $(find $OUTPUT -mtime +$LAST_CHANGE_DAYS -exec echo "Found:{}" ";") =~ "Found:" ]];

Problem ist, dass der Output aus dem vorherigen Teil von find als 2 Ordner angesehen werden.
 
Wie bereits geschrieben: Quoting problem

Der find sollte so lauten:

Code:
find "$OUTPUT"

Also die Variable OUTPUT mit Gänsefüsschen geschützt.
 

Ähnliche Themen

Problem mit Leerzeichen im Namen

OpenCV Installieren

Mein Server versendet SPAM in Massen

Samba 4 Gast Zugang unter Ubuntu funktioniert nicht

Ordnerdurchlauf for-Schleife & find MIT Leerzeichen

Zurück
Oben