Date de la veille sur date donnée

Résolu
kael999 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -  
kael999 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'aimerai pouvoir sortir la date de la veille sur une date donnée. C'est à dire si je tape 23/03/2009 je veux que cela me retourne 22/03/2009.

Est-ce que vous pouvez m'aider ?
Merci
Mickaël

Je suis sur AIX 5.3.0.0
Configuration: Windows XP
Safari 525.19

3 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,
    $ date -d '03/23/2009 1 days ago' +%d/%m/%Y
    22/03/2009
    Note que la date doit être donnée au format MM/DD/YYYY
    0
  2. kael999 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour,

    Ca ne marche pas sur mon OS je n'ai pas l 'option -d sur la commande date
    Mickaël
    0
  3. kael999 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
     
    J'ai trouvée çà =>

    Date()
    {
    day=`echo $1|awk -F"/" '{print $1}'`
    month=`echo $1|awk -F"/" '{print $2}'`
    year=`echo $1|awk -F"/" '{print $3}'`

    if [ $day -eq 01 ]
    then
    if [ $month -eq 01 ]
    then
    # make the month as 12
    month=12

    # deduct the year by one
    year=`expr $year - 1`
    else
    # deduct the month by one
    month=`expr $month - 1`
    fi

    day=`cal $month $year | awk 'NF != 0{ last = $0 }; END{ print last }' | awk '{ print $NF }'`
    else
    day=`expr $day - 1`
    fi

    printf "%02d/%02d/%d\n" $day $month $year
    }
    0