Vérifier l'existence d'un fichier
Arun
-
Arun -
Arun -
Bonjour,
je suis entrain d'ecrire un script permettant de vérifier l'existance d'un fichier.
disant que je dispose de 2 fichiers : fichier1 et fichier2 et d'un fichier test.sh (contenant le script)
test.sh contient
#!/bin/sh
if [ $# -eq 0 ]; then
echo "'basename $0': missing arguments." >&2
echo "usage: 'basename $0' file ..." >&2
exit -1
fi
je lance la commande par :
$ sh test.sh fichier1 fichier2
le programme vérifie bien que le nombre d'arguement est bien supérieur à 0.
Cependant je voudrais également qu'il vérifie que fichier1 et fichier2 existent.
par exemple, si je lance la commande par :
$ sh test.sh fichier1 fichier3 fichier 4
Il faut que le programme me dit que fichier3 et fichier4 n'existe pas.
Auriez-vous une idée du script que je peux écrire pour que cette vérification soit faite.
Merci
je suis entrain d'ecrire un script permettant de vérifier l'existance d'un fichier.
disant que je dispose de 2 fichiers : fichier1 et fichier2 et d'un fichier test.sh (contenant le script)
test.sh contient
#!/bin/sh
if [ $# -eq 0 ]; then
echo "'basename $0': missing arguments." >&2
echo "usage: 'basename $0' file ..." >&2
exit -1
fi
je lance la commande par :
$ sh test.sh fichier1 fichier2
le programme vérifie bien que le nombre d'arguement est bien supérieur à 0.
Cependant je voudrais également qu'il vérifie que fichier1 et fichier2 existent.
par exemple, si je lance la commande par :
$ sh test.sh fichier1 fichier3 fichier 4
Il faut que le programme me dit que fichier3 et fichier4 n'existe pas.
Auriez-vous une idée du script que je peux écrire pour que cette vérification soit faite.
Merci
A voir également:
- Vérifier l'existence d'un fichier
- Fichier bin - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
4 réponses
ou bien...
if [ -f lefichier ]
then
// le fichier existe
else
// le fichier existe pas
fi
man test
cordialement
if [ -f lefichier ]
then
// le fichier existe
else
// le fichier existe pas
fi
man test
cordialement
Merci de votre réponse.
Cependant j'ai un probléme pour adapter cette commande.
Je m'explique....
supposons que j'entre la commande :
$ sh test.sh fichier1
en ayant ds le script :
if [ -e $* ]
echo "le fichier $* existe"
else
echo "le fichier $* n'existe pas"
fi
on a comme résultat :
le fichier fichier1 existe
Cependant, lorsque je tape comme commande : $ sh test.sh fichier1 fichier1
on a comme résultat le fichier fichier1 fichier2 n'existe pas.
Comment faire pour que le test soit fait d'un coup uniquement sur fichier1 et d'un autre coup sur fichier2 et non pas sur "fichier1 fichier2" ( qui correspond à rien )?
Merci
Cependant j'ai un probléme pour adapter cette commande.
Je m'explique....
supposons que j'entre la commande :
$ sh test.sh fichier1
en ayant ds le script :
if [ -e $* ]
echo "le fichier $* existe"
else
echo "le fichier $* n'existe pas"
fi
on a comme résultat :
le fichier fichier1 existe
Cependant, lorsque je tape comme commande : $ sh test.sh fichier1 fichier1
on a comme résultat le fichier fichier1 fichier2 n'existe pas.
Comment faire pour que le test soit fait d'un coup uniquement sur fichier1 et d'un autre coup sur fichier2 et non pas sur "fichier1 fichier2" ( qui correspond à rien )?
Merci
Bonjour,
La solution est $@ qui prend les paramètres un par un.
Mais je te conseille de mettre ton test à l'intérieur d'une boucle for...
Pour être bref :
#!/bin/sh
for $@ in param1 param2 param3 [...] param22487899887755396
do
if test ...
..
fi
done.
Vérifie la syntaxe, mais je crois que c'est ça.
Bien à toi
La solution est $@ qui prend les paramètres un par un.
Mais je te conseille de mettre ton test à l'intérieur d'une boucle for...
Pour être bref :
#!/bin/sh
for $@ in param1 param2 param3 [...] param22487899887755396
do
if test ...
..
fi
done.
Vérifie la syntaxe, mais je crois que c'est ça.
Bien à toi