probleme de comparaison de date en shell unix

probleme de comparaison de date en shell unix - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 22-09-2004 à 11:49:50    

Bonjour,
 
j'ai un souci avec un script que je suis en trai de développer
 
je désire comparer des dates contenu dans un fichiers avec  
un encadrement de deux dates (datedeb et datefin)
 
afin de ne récupérer que les lignes entre ces deux date  
 
auriez vous la solution me permettant de faire cette comparaison ?


---------------

Reply

Marsh Posté le 22-09-2004 à 11:49:50   

Reply

Marsh Posté le 22-09-2004 à 11:59:42    

utilise le for mat de date
date '+%Y%m%d'  
ça te renvoie une date comme 20040922 pour aujoud'hui
Après c'est juste une simple comparaison de strings
NOW=`date '+%Y%m%d'`
if [ "$NOW"-gt "$datedeb" -a "$NOW" -lt "$datefin" ] ....

Reply

Marsh Posté le 22-09-2004 à 13:54:33    

avec quel shell cela doit fonctionner car en ksh le test est toujours valide


---------------

Reply

Marsh Posté le 22-09-2004 à 14:51:57    

$datebeg et $datefin doivent être au même format
utilise date -d la date en ascii
date1=`date -d "Sept 18 1995" +%Y%m%d`
date1=`date -d "10/18/1996" +%Y%m%d`
now=`date +%Y%m%d`
if [ "$now" -gt "$date1" -a "$now" -lt "$date2"]; then  
...
fi
Enfin tu adaptes...

Reply

Marsh Posté le 25-09-2004 à 19:14:26    

fguilleme a écrit :

utilise le for mat de date
date '+%Y%m%d'  
ça te renvoie une date comme 20040922 pour aujoud'hui
Après c'est juste une simple comparaison de strings
NOW=`date '+%Y%m%d'`
if [ "$NOW"-gt "$datedeb" -a "$NOW" -lt "$datefin" ] ....


 
essai peut etre
NOW=`date +"%Y%m%d"`  
if [ "$NOW"-gt "$datedeb"] ["$NOW" -lt "$datefin" ] ....
 
bon test

Reply

Marsh Posté le 25-09-2004 à 19:15:40    

volpino a écrit :

essai peut etre
NOW=`date +"%Y%m%d"`  
if [ "$NOW"-gt "$datedeb"] ["$NOW" -lt "$datefin" ] ....
 
bon test


 
sorry
 :non: if [ "$NOW"-gt "$datedeb"] && ["$NOW" -lt "$datefin" ] ....
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed