[Précédent (date)] [Suivant (date)] [Précédent (sujet)] [Suivant (sujet)] [Index par date] [Index par sujet]
Répertoire vide
- To: "" <>
- Subject: Répertoire vide
- From: Richard Prescott <>
- Date: 23 Mar 2004 10:40:40 -0500
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]$