Signaler

Le nombre des fichier dans un sous répertoire [Résolu/Fermé]

Posez votre question CYG - Dernière réponse le 6 mai 2017 à 19:54 par 1234
Bonjour,

j ai un sous répertoire qui contient x fichiers, j'ai besoin d une commande qui peut compter le nombre de fichiers;
quelqu un peut m'aider

merci d avance

CYG
Utile
+42
plus moins
Pour y remédier :

ls -Al | wc -l
Cette réponse vous a-t-elle aidé ?  
CYG- 13 mars 2008 à 11:03
merci bcp;ça marche

CYG
Trab- 5 janv. 2011 à 21:24
ls | wc-w aussi ,mais je me demande la commande wc permet de compter le nombre de lignes et mots ainsi que les caractéres nn ?.Comment cette commande peut compter le nombre de fichiers d'un répertoire???
fg- 11 nov. 2011 à 01:57
pour compter voilà la commande
more fichierX
1234- 6 mai 2017 à 19:54
Pour compter le nombre de fichiers du répertoire courant, on peut utiliser :
A. ls | wc -l *

B. echo $PWD > wc

C. ls | wc -w

D. ls -l | wc -w

E. cat $PWD

F. cat $PWD | wc -c
Répondre
Utile
+12
plus moins
Bonjour,

Une commande un peu plus simple pour éviter d'avoir les . et .. :

ls -1 | wc -l

Cordialement.
Utile
+10
plus moins
Il suffit de faire un ls et de compter le nombre de lignes (wc -l)
ls -al | wc -l
Utile
+10
plus moins
Petit complément au
ls -1|wc -l
pour compter le nombre de fichiers uniquement dans le répertoire courant :

Si l'on souhaite connaître le nombre de fichiers sous dossiers compris pour un répertoire donné :
find /mondossier -name \* | wc -l


Sous Linux parfois on a un problème du nombre d'inode restant (pointeurs vers les fichiers) visible quand on a un
100%
sur la commande
df -khi
. Dans ce cas pour trouver le coupable (qui consomme beaucoup d'inodes donc de fichiers) j'utilise la commande suivante :
for dossier in 'find /var -maxdepth 1 -type d' ; do NBF='find $dossier -name \* | wc -l'; echo $dossier: $NBF; done

Exemple de sortie :
/var: 70463
/var/log: 220
/var/spool: 62615
/var/opt: 4
(...)

Détails : pour un répertoire donné je compte les fichiers (sous répertoires compris) et je fais la même chose pour ses premiers sous-répertoires.
boly38 271Messages postés mercredi 23 février 2011Date d'inscription 29 septembre 2016 Dernière intervention - 16 déc. 2013 à 14:02
pour être précis, il manque l'option
-type f
(ne retenir que les fichiers)
- premier exemple :
find /mondossier -type f -name \* | wc -l

- second :
for dossier in 'find /var -maxdepth 1 -type d' ; do NBF='find $dossier -type f -name \* | wc -l'; echo $dossier: $NBF; done
Utile
+3
plus moins
Nota Bene : ça compte aussi les répertoires "." et ".."
Utile
+3
plus moins
;-)

Merci de penser à noter le problème comme résolu !
Utile
+2
plus moins
Bonjour,

Grace à votre méthode j'arrive a compter le nombre de fichier dans un dossier.
Ce que j'aimerais faire est simple. Si il y a plus de 10 fichier dans le dossier il faut envoyer un mail.
Pour la partie envoi du mail j'ai ce qui faut.
Auriez-vous une méthode pour faire cela?

Alexis
Nicolas- 15 déc. 2008 à 15:04
Salut Antony,

C'est de l'assistanat ! Pour effectuer ce genre d'action, il faut savoir utiliser les commandes unix de base et les assembler entre elles --> achète un unix pour les nuls par exemple.

Pour tester une condition: test
Pour afficher les fichiers d'un répertoire: ls
Pour compter les lignes: wc
Pour faire une comparaison: test
=> on obtient alors ceci:
if test $(ls -A | wc -l) -ge 10; then
# ta commande d'envoi de mail
fi

Et n'oublie pas d'acheter unix pour les nuls !


Nicolas
racivic- 21 avril 2010 à 11:36
bonjour
svp je cherche un script qui permet d'aafficher uniquement les fichiers excutable !?
mercii d'avance :)
KuKrApOk59 442Messages postés jeudi 27 décembre 2007Date d'inscription 13 septembre 2013 Dernière intervention - 21 avril 2010 à 11:57
Bonjour,

Pour ce cas, perso, j'utilise un bete find :

root@leela:/tmp/test# ls -l  
total 0  
-rw-r--r-- 1 root root 0 2010-04-21 11:54 pas_script  
-rwxr-xr-x 1 root root 0 2010-04-21 11:54 script

Execution du find pour trouver les fichiers executebles (ici en 755)

root@leela:/tmp/test# find . -perm 0755  
.  
./script

Il prend en paramètre du -perm les permissions qu'on veut chercher
Utile
+0
plus moins
Si tes fichiers sont de meme type (pour mon exemple 'xml' tu fais :

find . -name '*.xml' | wc

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !