Sur une machine Linux, je voudrais parcourir une arborescence de dossiers et d'obtenir une liste de tous les différents extensions de fichier.
Quelle serait la meilleure façon de le réaliser à partir d'un shell?
Sur une machine Linux, je voudrais parcourir une arborescence de dossiers et d'obtenir une liste de tous les différents extensions de fichier.
Quelle serait la meilleure façon de le réaliser à partir d'un shell?
Reursive version:
find . -type f | sed -e 's/.*\.//' | sed -e 's/.*\///' | sort -u
Si vous voulez totaux (combien de fois l'extension a été vu):
find . -type f | sed -e 's/.*\.//' | sed -e 's/.*\///' | sort | uniq -c | sort -rn
Non-récursif (dossier unique):
for f in *.*; do printf "%s\n" "${f##*.}"; done | sort -u
Je l'ai basé sur ce post sur le forum, le crédit devrait y aller.
Powershell: dir -recurse | select-object extension -unique
grâce à http://kevin-berridge.blogspot.com/2007/11/windows-powershell.html
Trouver everythin avec un point et ne montrer que le suffixe.
find . -type f -name "*.*" | awk -F. '{print $NF}' | sort -u
si vous savez tous suffixe ont 3 caractères, puis
find . -type f -name "*.???" | awk -F. '{print $NF}' | sort -u
ou avec sed montre tous les suffixes de une à quatre caractères. Le changement {1,4} à la gamme des personnages vous attendent dans le suffixe.
find . -type f | sed -n 's/.*\.\(.\{1,4\}\)$/\1/p'| sort -u
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.