#!/bin/bash CHEMIN=$1 if [ $# -ne 1 ]; then echo "argument incorrect." echo "Utilisation : $./compte_fichiers.sh /chemin/vers/dossier" exit 0 fi if [ ! -d $CHEMIN ]; then echo $CHEMIN "n'est pas un répertoire !" echo "Utilisation : $./compte_fichiers.sh /chemin/vers/dossier" exit 0 fi # chemin absolu ou relatif? if [[ $CHEMIN != /* ]]; then CHEMIN=$(pwd)/$CHEMIN fi # trailing slash necessaire if [[ $CHEMIN != */ ]]; then CHEMIN="$CHEMIN"/ fi find $CHEMIN -printf "%h:%f\n" | awk -F: '{d[$1]++}END{ for(o in d) print d[o],o }'