Script shell et conditions

Fermé
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 - 31 juil. 2008 à 11:29
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 - 5 sept. 2008 à 14:36
Bonjour,

chaque jour c'est une nouvelle recherche. Voila quels sont les arguments pour faire dans un script Shell une condition du style :

si des fichiers existes dans le repertoire alors tu executes
commande 1, commande 2

if [ ]
then
commande 1
commande 2
else
exit 1
fi

Avez vous une idée?

Merci
A voir également:

6 réponses

if [ -f "nom_du_fichier" ]; then
commande1
commande2
fi
0
if test -f toto.txt
then
rm toto.txt



if test -f *.ok
then
0
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 22
31 juil. 2008 à 11:49
Merci. Mais les solutions que vous m'indiquer permettent de tester si un fichier existe hors ce que je souhaite c'est testeé si dans un répertoire plusieurs fichiers existent. J'avais fais ce qui suit mais cela ne fonctionne pas.


if [ -f ${TMPDIR}/*.* ]
0
tu connais les noms des fichiers ? si oui tu les mets à la suite dans la condition...

if [ -f "nom_du_fichier1" ] && [ -f "nom_du_fichier2" ] ; then
commande1
commande2
fi
0
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 22
31 juil. 2008 à 12:08
Non je ne connais pas le nom des fichiers a l'avance puisque ce sont des fichiers copiés a la volée selon la date de modification.
Merci
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
31 juil. 2008 à 12:11
on ne peut pas mettre de wild card dans un test

DIR=$(ls ${TMPDIR}/*.*)
if [ -n $DIR ] ; then
...
0
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 22
31 juil. 2008 à 13:13
Merci dubcek.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
31 juil. 2008 à 13:20
Plus simplement même :
if [ "$(ls -A  ${TMPDIR}/)" ]; then cmd...; else exit; fi
devrait le faire...
0
pcsystemd Messages postés 691 Date d'inscription dimanche 27 novembre 2005 Statut Membre Dernière intervention 15 janvier 2024 22
5 sept. 2008 à 14:36
Merci un peut en retard j'étais en congés.
0