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

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Problème avec la commande date [RESOLU]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème avec la commande date [RESOLU]

n°876962
jesusdebet​hune
Salut ! ca farte ?
Posté le 10-01-2007 à 12:13:16  profilanswer
 

Bonjour à tous,
 
Je suis en train d'ecrire un script sous solaris 9 et j'ai un problème.
 
J'ai besoin de récupérer la date du jour - 15 jours...
 
J'ai vu sur plusieur forum cette commande :  
 
quinzeJoursAvant=$(date --date='15 days ago')
 
le truc, c'est que ça ne marche pas dans mon cas :(
 
bash-2.03$ date --date='15 days ago'
date: illegal option -- -
date: illegal option -- d
date: invalid argument -- te=15 days ago
usage:  date [-u] mmddHHMM[[cc]yy][.SS]
        date [-u] [+format]
        date -a [-]sss[.fff]

 
Une idée ? une solution ?
 
Merci :hello:


Message édité par jesusdebethune le 11-01-2007 à 12:12:11
mood
Publicité
Posté le 10-01-2007 à 12:13:16  profilanswer
 

n°876972
ph75
Posté le 10-01-2007 à 12:50:24  profilanswer
 

Ca m'étonnerait que ça marche avec le "date" de Solaris.
Si ça marche ça doit être avec la version GNU.

n°876983
zoidberg
Gloire au crapaud Hypno!!
Posté le 10-01-2007 à 13:23:22  profilanswer
 

Il y a un truc super simple que tu peux faire, je ne sais pas si ca fonctionne sous Solaris, mais sous aix nickel:

TZ_ORI=$TZ
TZ=360 (24 heures * 15 jours) (si tu veux ajouter 15 jours tu mets -360)
date
TZ=$TZ_ORI


et zou
 
edit: petit oubli, pense a ajouter ta timezone actuelle (-1)
sous AIX la TZ ressemble a ca: NFT-1DFT,M3.5.0,M10.5.0 (avec les passages heure d'ete/hiver)
tu dois donc avoir (pour un truc propre mais bon ca sert pas a grand chose): TZ=NFT+359DFT,M3.5.0,M10.5.0
et j'ai pas envie de reflechir a ce que ca donne si on se trouve moins de 15 jours apres un changement d'heure ete/hiver... :pt1cable:


Message édité par zoidberg le 10-01-2007 à 13:38:38
n°877025
jesusdebet​hune
Salut ! ca farte ?
Posté le 10-01-2007 à 15:25:28  profilanswer
 

Je vous remerci pour vos réponse, mais la réponse de Zoidberg me parait un peu compiquer pour moi. Désolé :(
 
Y a t il une autr ecomande qui retourne la date ?

n°877028
zoidberg
Gloire au crapaud Hypno!!
Posté le 10-01-2007 à 15:31:17  profilanswer
 

attends, c tout ce qu'il y a de plus simple, ce que j'ai mis a la fin c'est pour que ca soit plus propre, mais la je vois pas comment faire plus simple, essaye:
TZ_ORI=$TZ
TZ=+359
date
TZ=$TZ_ORI


Message édité par zoidberg le 10-01-2007 à 15:31:40
n°877268
jesusdebet​hune
Salut ! ca farte ?
Posté le 11-01-2007 à 11:47:46  profilanswer
 

Merci pour ta réponse Zoidberg
 
Je écris ce petit script pour faire mes tests sur ce problème de date en incluant ton bout de code :
 
 
#!/bin/ksh
. $HOME/.profile
jour=`date +%d`
mois=`date +%m`
annee=`date +%Y`
 
echo "Le jour d'aujourd'hui est : $jour $mois $annee"
 
date
 
TZ_ORI=$TZ
TZ=+360
date
TZ=$TZ_ORI

 
 
Résultat :
 
bash-2.03$ ./purge.sh
Le jour d'aujourd'hui est : 11 01 2007
Thu Jan 11 11:44:13 MET 2007
Thu Jan 11 10:44:13 GMT 2007

 
Donc il passe en GTM et il y a un décalage d'une heure...
J'ai essyer de mettre des nombre plus important a la ligne TZ=+360, mais ca ne change rien
 
Merci encore pour ton aide

n°877275
jesusdebet​hune
Salut ! ca farte ?
Posté le 11-01-2007 à 12:10:07  profilanswer
 

Salutation !
 
J'ai trouvé ceci sur google : http://www.labo-sun.com/resource-F [...] olaris.htm
 
Il y est bien ecrit que :

Citation :

Le système Solaris ne permet pas l'ajout du champ " '-1 day' " ou d'un équivalent...


 
 
J'ai essayer ca :  
 
bash-2.03$ echo `TZ=MET+360 date +"%D"`
12/27/06

 
 :bounce: huhu ^^ ca marrrrrche  :hello:  
 
Merci Zoidberg pour le temps que tu m'as consacré  :jap:

n°877295
fighting_f​alcon
Posté le 11-01-2007 à 13:56:54  profilanswer
 

ton 1er script ne marche pas car tu modifies la valeur de la variable TZ en local donc la commande date ne voit pas la modif ...
 
donc effectivement, soit ta technique tout sur une ligne :
TZ=MET+360 date
 
soit en utilisant export pour rendre la nouvelle variable TZ globale :
export TZ=MET+360
date
export TZ=$TZ_ORI

n°877335
zoidberg
Gloire au crapaud Hypno!!
Posté le 11-01-2007 à 15:43:15  profilanswer
 

cool ;)
par contre je ne comprends pas bien pourquoi ca ne marche pas si tu le fais sur plusieurs ligne sans exporter la variable, je viens de tester (aix 5.3 ml3) et ca fonctionne:

#!/bin/ksh
date
TZ=+359
date


je lance:

Thu Jan 11 15:41:58 NFT 2007
Wed Dec 27 15:41:58  2006


bref, pas grave du moment que t'as pu faire ce que tu voulais ;)

n°877365
jesusdebet​hune
Salut ! ca farte ?
Posté le 11-01-2007 à 17:29:47  profilanswer
 

en faite je suis sur un serveur en SOLARIS. Ca fonctionne peut etre pas de la meme facon que sous AX. Merci encore


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

  Problème avec la commande date [RESOLU]

 

Sujets relatifs
Problème entre Samba et Cups[PureFTPd] Problème de confiuration du cryptage SSL/TSL
ipcop et neufbox [résolu]cherche un programme pour envoyer un mail en une ligne de commande
Problème HotmailProbleme E/S avec Audacity et XMMS
Pb RAID 1 / mdadm avec Mandriva 2007 [résolu]Problème clavier sous mandriva et autre linux [Résolu]
[DEBIAN] Probleme de boot a venir :( 
Plus de sujets relatifs à : Problème avec la commande date [RESOLU]


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