Kann ich im CSV-Format mit Verzeichnis- und Dateispalten ausgeben?

9

Ich brauche eine rekursive Verzeichnisliste wie ls -R, aber im CSV-Format.

Ich möchte separate Spalten für das Verzeichnis und den Dateinamen.

Shailey999
quelle
1
Enge Wähler. Dies wird richtig gefragt und beantwortet.
Elder Geek

Antworten:

13

lsDaten können nicht im CSV-Format gedruckt werden, aber findbei einem benutzerdefinierten Ausgabeformat:

find . -type f -printf '%h,%f\n'

%hbezeichnet den Verzeichnisteil, %fden Dateinamenteil. Siehe das Handbuch , insbesondere den Abschnitt über -printf format.

Beachten Sie jedoch, dass dies nicht ordnungsgemäß funktioniert, wenn Ihre Dateinamen Sonderzeichen oder ein ,a enthalten.

PerlDuck
quelle
5
Durch Hinzufügen von Anführungszeichen kann zumindest vermieden werden, dass eine ungültige CSV erstellt wird, wenn ein Dateiname Folgendes enthält ,: -printf '"%h","%f"\n'.
Bakuriu