La sortie ls peut-elle être au format CSV avec des colonnes de répertoire et de fichier?

9

J'ai besoin d'une liste d'annuaire récursive comme ls -R, mais au format CSV.

Je veux des colonnes séparées pour le répertoire et le nom de fichier.

Shailey999
la source
1
Fermer les électeurs. Ceci est demandé et répondu correctement.
Elder Geek

Réponses:

14

lsne peut pas imprimer les données au format CSV, mais findpeut, si on lui donne un format de sortie personnalisé:

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

%hdésigne la partie répertoire, %fla partie nom de fichier. Voir le manuel , en particulier la section sur -printf format.

Cependant, sachez que cela ne fonctionnera pas correctement lorsque vos noms de fichiers contiennent des caractères spéciaux ou un ,.

PerlDuck
la source
5
Ajout de guillemets peut au moins éviter de produire un CSV invalide si un nom de fichier contient ,: -printf '"%h","%f"\n'.
Bakuriu