Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1487 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  probleme de comparaison de date en shell unix

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme de comparaison de date en shell unix

n°560406
dunkansk8
Posté le 22-09-2004 à 11:49:50  profilanswer
 

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 ?


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

mood
Publicité
Posté le 22-09-2004 à 11:49:50  profilanswer
 

n°560413
fguilleme
Posté le 22-09-2004 à 11:59:42  profilanswer
 

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" ] ....

n°560473
dunkansk8
Posté le 22-09-2004 à 13:54:33  profilanswer
 

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


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

n°560511
fguilleme
Posté le 22-09-2004 à 14:51:57  profilanswer
 

$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...

n°561927
volpino
aucune
Posté le 25-09-2004 à 19:14:26  profilanswer
 

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

n°561929
volpino
aucune
Posté le 25-09-2004 à 19:15:40  profilanswer
 

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" ] ....
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  probleme de comparaison de date en shell unix

 

Sujets relatifs
[Gentoo] Probleme depuis la derniere mise a jour de portageComment avoir accès aux messageries instantannées sous unix
[Debian][Sarge][LaTeX][EMACS][ AUCTeX] Probleme d'update recent ?Problème postfix sur passerelle debian
Probleme de Mandrake control centerProblème de DMA
Probleme demarrage linuxprobleme de distrib sous linux svp help !
PVR 350 + PCTV Rave : problème bttvProbleme avec Ecran tout vieux
Plus de sujets relatifs à : probleme de comparaison de date en shell unix


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR