Modification d'un format de date

Résolu
Bonjour, a tous

je veux modifier le format de date suivant : 20111027191609.8Z en 2011/10/27 19:16:09.8Z par une commande shell

merci

5 réponses

  1. Contributeur
    en bash
    $ D=20111027191609.8Z ; echo ${D:0:4}/${D:4:2}/${D:6:2} ${D:8:2}:${D:10:2}:${D:12:5} 
    2011/10/27 19:16:09.8Z
    $ 
    1. Contributeur
      Salut,

      Ou avec "sed" :

      $ echo ${A%}
      20111027191609.8Z
      
      $ echo ${A%} | sed -r 's#(....)(..)(..)(..)(..)(..)(.*)#\1/\2/\3 \4:\5:\6\7#'
      2011/10/27 19:16:09.8Z
      
      $

      ;-))
      1. Contributeur
        hello
        $ echo 20111027191609.8Z | awk 'BEGIN{FIELDWIDTHS="4 2 2 2 2 5"}{print $1 "/" $2 "/" $3 " " $4 ":" $5 ":" $6}' 
        2011/10/27 19:16:09.8Z 
        $ 
        1. salut,

          quel shell ?

          en bash, tu peux te servir des substitutions de paramètres, genre
          var="abc"
          var="${var:1}"
          echo "$var"
          bc


          en sh, il faudra utiliser cut.