Script shell (liste de repertoires)
Résolu
sotognon
Messages postés
36
Date d'inscription
Statut
Membre
Dernière intervention
-
oupsman Messages postés 316 Date d'inscription Statut Membre Dernière intervention -
oupsman Messages postés 316 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Quelqu'un pourrait il m'aider a ecrir le script suivant:
Vous devez lister sur la sortie standard l’ensemble des dossiers du répertoire indiqué en argument
au script. Plusieurs arguments peuvent être donné.
Si un des dossier n’existe pas, vous devez afficher "dir : not found." (dir doit être remplacé par
le nom du dossier), et continuer normalement son execution.
Si un des dossier ne peux être lu, vous devez afficher "dir : access denied." (dir doit être remplacé
par le nom du dossier).
Si un des dossier n’en est pas un, vous devez afficher "dir : not a directory." (dir doit être
remplacé par le nom du dossier).
Si un problème a été rencontré durant l’execution de votre script, vous devez retourner 1 à la
fin de celui-ci. Sinon, vous devez retourné 0.
Vous devez utiliser echo, shift, test et ls.
Merci d'avance.
Cordialement.
Quelqu'un pourrait il m'aider a ecrir le script suivant:
Vous devez lister sur la sortie standard l’ensemble des dossiers du répertoire indiqué en argument
au script. Plusieurs arguments peuvent être donné.
Si un des dossier n’existe pas, vous devez afficher "dir : not found." (dir doit être remplacé par
le nom du dossier), et continuer normalement son execution.
Si un des dossier ne peux être lu, vous devez afficher "dir : access denied." (dir doit être remplacé
par le nom du dossier).
Si un des dossier n’en est pas un, vous devez afficher "dir : not a directory." (dir doit être
remplacé par le nom du dossier).
Si un problème a été rencontré durant l’execution de votre script, vous devez retourner 1 à la
fin de celui-ci. Sinon, vous devez retourné 0.
Vous devez utiliser echo, shift, test et ls.
Merci d'avance.
Cordialement.
A voir également:
- Script shell lister les fichiers d'un répertoire
- Classic shell - Télécharger - Personnalisation
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Script vidéo youtube - Guide
- Comment ouvrir un fichier bin ? - Guide
3 réponses
Merci a tous,
J'ai pu resoudre mon probleme avec le script suivant.
Cependant, je pense qu'il peut etre corrige et ameliore.
#!/bin/bash
erreur=0
while [ "$1" != "" ]; do
if [ ! -d "$1" ] ; then
echo "$1: not a directory.";
erreur=`expr $erreur + 1`;
else
cd $1;
echo " CONTENU DU REPERTOIRE `basename $1` EST:";
for x in `ls .`; do
if [ -d "$x" ] && [ ! -x "$x" ]; then
echo "$x: access denied.";
fi;
[ -d "$x" ] && [ -x "$x" ] && echo $x;
done;
fi;
shift
done;
if [ "$erreur" -ne "0" ]; then
exit 1;
fi;
Cordialement.
J'ai pu resoudre mon probleme avec le script suivant.
Cependant, je pense qu'il peut etre corrige et ameliore.
#!/bin/bash
erreur=0
while [ "$1" != "" ]; do
if [ ! -d "$1" ] ; then
echo "$1: not a directory.";
erreur=`expr $erreur + 1`;
else
cd $1;
echo " CONTENU DU REPERTOIRE `basename $1` EST:";
for x in `ls .`; do
if [ -d "$x" ] && [ ! -x "$x" ]; then
echo "$x: access denied.";
fi;
[ -d "$x" ] && [ -x "$x" ] && echo $x;
done;
fi;
shift
done;
if [ "$erreur" -ne "0" ]; then
exit 1;
fi;
Cordialement.
Desole; Voici ce que j'ai ecrit:
#!/bin/bash
err-0
while [ "$1" != "" ]; do
if [ ! -d "$1" ]; then
echo "$1: not found or not a directory";
err=`expr $err + 1`;
else
cd $1;
echo " CONTENU DU REPERTOIRE $1 EST:";
for x in `ls -C.`; do
[ -d "$x" ] && echo $x;
done;
fi;
shift
done;
if [ "$err" -ne "0" ]; then
exit 1;
fi;
#!/bin/bash
err-0
while [ "$1" != "" ]; do
if [ ! -d "$1" ]; then
echo "$1: not found or not a directory";
err=`expr $err + 1`;
else
cd $1;
echo " CONTENU DU REPERTOIRE $1 EST:";
for x in `ls -C.`; do
[ -d "$x" ] && echo $x;
done;
fi;
shift
done;
if [ "$err" -ne "0" ]; then
exit 1;
fi;
Si ton problème est résolu, n'oublies pas de modifier le statut en "résolu". à +