Partage
  • Partager sur Facebook
  • Partager sur Twitter

Compter le nombre de fichiers&répertoires

Sujet résolu
    4 octobre 2017 à 21:14:48

    Bonjour,

    Dans le cadre de mes étude j'ai un exercice avec comme question: grâce au pipe compter le nombre de fichiers et de répertoires contenus dans un répertoire passé en argument.

    J'ai testé cette commande : 

    find -name \* | wc -l
    

    Mais je ne sais pas comment faire pour faire par rapport au répertoire passé en argument.

    Merci de votre aide ! 

    -
    Edité par Eric01 4 octobre 2017 à 21:15:10

    • Partager sur Facebook
    • Partager sur Twitter
      4 octobre 2017 à 22:09:02

      Bonsoir,

      Il faut créer un script travaillant avec un paramètre/argument ($1 : premier paramètre, $2 deuxième paramètre, etc. ...). Par exemple :

      #!/bin/bash
      
      ls $1 | wc -l
      • Partager sur Facebook
      • Partager sur Twitter
        4 octobre 2017 à 22:11:35

        salut,

        pourquoi utiliser -name ?

        as-tu parcouru le man de find pour voir comment on s'en sert ?

        faut-il obtenir le nombre de fichiers ET le nombre de répertoires, ou le nombre de fichiers et de répertoires ?
        dans le dernier cas, find est inutile.

        NB: les noms de fichiers peuvent contenir des passages à la ligne, que comptera wc :(
        le nombre de fichiers sera alors erroné !

        EDIT: c'est pour ça aussi qu'on ne parcourt pas la sortie de ls.

        pour bien faire, parce qu'IL FAUT utiliser un pipe (c'est l'exercice), il faut séparer les noms de fichiers par le caractère NUL, et de lire la sortie par une boucle utilisant un séparateur NUL...

        sinon, ça se fait avec un boucle sur chaque élément du répertoire, et en testant si l'argument est un fichier ou un répertoire...

        -
        Edité par dantonq 4 octobre 2017 à 22:14:53

        • Partager sur Facebook
        • Partager sur Twitter

        Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

          21 octobre 2017 à 3:15:04

          et si un répertoire a été créé ainsi :
          mkdir 'nom avec
          des espaces sur
          plusieurs lignes'
          ?
          • Partager sur Facebook
          • Partager sur Twitter

          Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

            22 octobre 2017 à 17:10:29

            Merci à vous j'ai réussi l'exercice !
            • Partager sur Facebook
            • Partager sur Twitter

            Compter le nombre de fichiers&répertoires

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown