La commande( and not) en script shell

Résolu
sajodia -  
lunixseeker Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'aimmerais savoir comment s'ecrit la commande (and not) pour marquer l'inexistant,la négation
if [ $jour == 20 ] and [ $mois == 01 or 03 or 05 or 07 or 08 or 10 or 12 ] and not [- s /sextantapp/m1/fic/GRPARAM ] and not [ -s /sextantapp/m1/fic/GRTABLE ] and not [ -s /sextantapp/m1/fic/GRAGENT ] and not[ -s /sextantap
p/m1/fic/GRCOUTMAT ]
merci.
A voir également:

6 réponses

sov^36 Messages postés 3621 Date d'inscription   Statut Contributeur Dernière intervention   716
 
SAlut,

c'est dans la condition que cela se passe :
if ! test -s fichier
sera vrai si fichier n'existes pas
0
sajodia
 
bonjour,
ça ne marche pas ou bien peut etre j'ai mal compris
merci de réexpliquer svp
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Connais-tu la signification du test "[ -s fichier ]" ???
0
sajodia
 
cette commande permet de tester si le fiichier est présent dans le repertoire
merci
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Non ! Cette commande renvoie "vraie" si le fichier a une taille différente de "0" (zéro) !!!

C'est "-e" qui permet de tester si un fichier existe :-))
0
sajodia
 
Merci ,
et quelle commande faut il ou que faut il faire pour dire si le fichier n'existe pas.
0
sov^36 Messages postés 3621 Date d'inscription   Statut Contributeur Dernière intervention   716 > sajodia
 
re,

je lis "C'est "-e" qui permet de tester si un fichier existe :-)) " ;)
0
sajodia > sov^36 Messages postés 3621 Date d'inscription   Statut Contributeur Dernière intervention  
 
oui et c'est quoi la commande pour dire n'existe pas
0
sov^36 Messages postés 3621 Date d'inscription   Statut Contributeur Dernière intervention   716 > sajodia
 
la commande if va renvoyer vrai ou faux, vrai si la condition est remplie, faux si elle n'est pas rempli :

if test -e fichier

test -e fichier est la condition, si fichier existe alors if renverra vrai , sinon faux.

on peux dire à if de tester si la condition n'est pas rempli grâce au !

ainsi if ! test -e fichier renverra vrai si fichier n'existe pas.
Tu as aussi l'exemple de jipicy en dessous pour voir comment cela marche.
0
sajodia > sov^36 Messages postés 3621 Date d'inscription   Statut Contributeur Dernière intervention  
 
merci g compris ca marche
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Pour reprendre l'exemple donné dans un de tes précédents messages :
if [ [ $jour = 31 ]] && [[ $mois = 0[1358] ]] && [ ! -e /sextantapp/m1/fic/GRPARAM -a ! -e /sextantapp/m1/fic/GRTABLE ! -e /sextantapp/m1/fic/GRAGENT -a ! -e /sextantapp/m1/fic/GRCOUTMAT ]; then ...
0
sajodia
 
merci ,
g compris ça marche
0

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

Posez votre question
kbr Messages postés 14 Date d'inscription   Statut Membre Dernière intervention   6
 
déjà faut pas parler aux gens qui utilisent windows XP :-D


;-)
0
lunixseeker Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
je crois que c'est la commande if [ -f $1 ] qui sert a tester si le fichier existe !!!!
0