1 votes

Comment lister tous les fichiers du système

Je voudrais lister tous les fichiers de mon système à partir de la ligne de commande.

Le système BSD fourni find avec la ligne de commande suivante

sudo find / 

énumère plusieurs des fichiers deux fois, sous la racine et sous /System/Volumes/Data .

Le GNU find installé avec Homebrew, avec la ligne de commande suivante

sudo gfind /

ne liste pas les fichiers sous /Applications , /Users , /Volumes et autres.
La commande

sudo gfind /*

liste d'autres fichiers, mais je ne suis pas sûr qu'ils soient tous.

Je voudrais lister tous les fichiers une fois et de préférence avec GNU find parce que, contrairement à BSD find a un -printf avec de nombreux formats de sortie, comme inode, taille, chemin et nom de fichier séparés, horodatage unifié et autres.

1voto

Dan McClain Points 7036

Ma meilleure solution est la suivante (pour le shell bash)

shopt -s dotglob
for f in /* 
  sudo gfind "$f" -path /System/Volumes/Data -prune -o -print 2>/dev/null
done
shopt -u dotglob

où, à la place de -print on peut utiliser plusieurs autres commandes.

La plupart des fichiers dans /System/Volumes/Data sont les mêmes que dans / avec des ajouts peu nombreux et peu intéressants.

De plus, la solution la plus compacte gfind /* ne fonctionne pas bien, car elle produit de nombreuses boucles qui empêchent l'énumération de nombreuses parties de la liste complète.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X