• # genre ca ?

    Posté par  (site web personnel) . Évalué à 5.

    [pterjan@plop ~]$ diffdate() { echo $((($(date -d "$2" +%s)-$(date -d "$1" +%s))/86400)); }
    [pterjan@plop ~]$ diffdate 10/03/2005 11/14/2005
    42
    
    • [^] # Re: genre ca ?

      Posté par  (site web personnel, Mastodon) . Évalué à 1.

      lol@gas:~$ diffdate 01/01/2005 31/12/2005
      921

      Oups?!?

      La gelée de coings est une chose à ne pas avaler de travers.

      • [^] # Re: genre ca ?

        Posté par  (site web personnel, Mastodon) . Évalué à 1.

        Rhaaaa!! Foutu format de date US :-/

        lol@gas:~$ diffdate 01/01/2005 12/31/2005
        364

        Patapé

        La gelée de coings est une chose à ne pas avaler de travers.

      • [^] # Re: genre ca ?

        Posté par  . Évalué à 1.

        tout à fait, je suis sur un hp-ux B.11.00

        date -d "$2" %s ne fonctionne pas,

        merci d'avance.
    • [^] # Re: genre ca ?

      Posté par  . Évalué à 1.

      Bonjour, c'est tout à fait ça, mais je suis sur un hp-ux B.11
      et il n'y a pas de "date -d" par contre il y en a "%j" qui donne le nombre de jours.

      D'avance merci.

      Célestin.
      • [^] # Re: genre ca ?

        Posté par  (site web personnel) . Évalué à 2.

        Essayes --date au lieu de -d.
        Je n'ai pas de HP-UX donc je ne peux pas y faire man date et trouver la réponse :)
        • [^] # Re: genre ca ?

          Posté par  . Évalué à 1.

          je suis sur hpux, j ai fait un man date, y a pas d eauivalent a -d. %j donne uniauement le numero du jour dans l anne, cad qu il ne te donnerq pas le nombre de jours correcte pour des annees differentes.
          • [^] # Re: genre ca ?

            Posté par  (site web personnel) . Évalué à 2.

            Peut être le module Perl POSIX est il là...
            #!/usr/bin/perl
            use POSIX (mktime);
            my $date1 = shift or die "Missing first date";
            my $date2 = shift or die "Missing second date";
            $date1 =~ m|(..)/(..)/(....)| or die "Invalid first date";
            my $time1 = mktime(0,0,0,$2-1,$1-1,$3-1900);
            $date2 =~ m|(..)/(..)/(....)| or die "Invalid second date";
            my $time2 = mktime(0,0,0,$2-1,$1-1,$3-1900);
            print (($time2-$time1) / 86400);
            

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.