Bonjour,
je rencontre un problème qui me chifonne un peu
voila mon prog compare la date d'un fichier pour savoir si ce dernier date du même jour et du même mois que le système loçal
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 (ls -lt /var/opt/OV/Agent_Less/unix/logfile/hostname/*) > $tmpfile1 #met le mois courant du fichier dans $tmpfile5 cat $tmpfile1 | awk '{print $6}' > $tmpfile5 #met le mois courant du systeme dans $tmpfile2 date | awk '{print $2}' > $tmpfile2 # cat $tmpfile5 $tmpfile2 # oct # oct if [ "$tmpfile5" != "$tmpfile2" ] then echo "yes" else echo "sucks" fi exit 0
Mon problème se situe au niveau de la condition if, j'ai beau essayé plusieurs syntaxe la valeur de mes variables ne sont jamais remplacée, et le système me dit "/tmp/tmpfile5 != /tmp/tmpfile2" => VRAI
Evidemment les noms des variables ne sont pas identiques donc la condition prend toujours le même chemin.
J'ai testé:
La condition n'est jamais évaluée correctement, alors que si je fais un cat sur mes tmpfile ils sont tous les 2 remplis avec la valeur 'oct'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if [ $tmpfile5 != $tmpfile2 ] if [ $tmpfile5 = $tmpfile2 ]
Toute aide sera la bienvenue, je n'aime pas que la machine gagne...
D'avance merci
Partager