Bonjour ,
J'aimerai faire la condition suivante
SI le nombre de fichiers de la commande ls /A/* est supérieur a 1
Merci d'avance ,
Cordialement.
Bonjour ,
J'aimerai faire la condition suivante
SI le nombre de fichiers de la commande ls /A/* est supérieur a 1
Merci d'avance ,
Cordialement.
si c'est pour au moins 1 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part [ -f /A/* ] && action || sinon
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 [fp@ln ~] cd tmp [fp@ln ~/tmp] mkdir A [fp@ln ~/tmp] touch A/toto [fp@ln ~/tmp] [ -f A/* ] && echo OK || echo KO OK [fp@ln ~/tmp] rm -rf A [fp@ln ~/tmp] [ -f A/* ] && echo OK || echo KO KO [fp@ln ~/tmp] [fp@ln ~/tmp] echo $SHELL /bin/bash [fp@ln ~/tmp]
J'avais test et j'obtiens :
Merci pour ta réponse
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 if [ -f ./* ] then echo "TEST" fi ----> bash: [: too many arguments
si tu veux faire avec la syntaxe complête
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 if test -f A then echo "TEST" fi
J'ai la meme erreur :/
Code : Sélectionner tout - Visualiser dans une fenêtre à part bash: test: too many arguments
il faut absolument utiliser un objet nommé... tu peux pas le faire comme ça sur *
ou alors tu changes de méthode
tu fais
ce qui fait rien si rien n'est trouvé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part find /repertoire -type f -exec traitement {} \;
ne pas oublier d'interrompre à la première itération sinon c'est un traitement par fichier trouvé !
Apres le probleme c'est que
Pointe juste sur un fichier et nom un masque :/
Code : Sélectionner tout - Visualiser dans une fenêtre à part if test -f A
Partager