[Précédent (date)] [Suivant (date)] [Précédent (sujet)] [Suivant (sujet)] [Index par date] [Index par sujet]

Répertoire vide



Dans le "for file in $list", il y a un probleme avec les noms de
repertoire ou de fichiers contenant des espaces.  Voici une alternative
(essayà avec bash et devrait etre bon avec ksh et sh)

repvide()
{
  if ! [ -d "$1" ]; then
    echo "$1: Pas de tel repertoire" >&2
    return 1;
  fi
  [ $(find "$1" -maxdepth 1 2> /dev/null | wc -l) = 1 ]
}

C'est plate de faire appel a un programme extÃrieur (find) mais c'est ce
que j'ai trouvà de mieux.

DEMO:

[richard@richard test]$ repvide() { if ! [ -d "$1" ]; then echo "$1: Pas
de tel repertoire" >&2; return 1; fi; [ $(find "$1" -maxdepth 1 2>
/dev/null | wc -l) = 1 ]; }
[richard@richard test]$ repvide vide/ && echo vide
vide
[richard@richard test]$ repvide / || echo plein
plein
[richard@richard testpage.edo]$ mkdir "il est vide"
[richard@richard testpage.edo]$ repvide il\ est\ vide && echo vide
vide
[richard@richard test]$