Forum Programmation.shell mtime et format

Posté par  (site web personnel) .
Étiquettes : aucune
0
4
mar.
2005
Hi,
je cherche à renommer un fichier en fonction de sa date de dernière modification.
donc, je peux trouver le mtime avec :
stat -c %y backup.sql.bz2
mais comme puis-je transformer cette date ( 2005-02-17 23:09:33.000000000 +0000 ) en 20050217230933 ??
j'ai essayer date, mais il n'accepte pas la première date en entrée.
suis-je obligé de passé par une ligne de perl ?
stat -c %y backup.sql | perl -e '$E=<>; $E=~/(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)/; print "$1$2$3$4$5$6";'
  • # date ...

    Posté par  . Évalué à 3.

    Salut,

    Si tu utilises la fonction date issue des GNU core utilities (l'option -d n'est pas standard), tu peux essayer quelque chose du genre :
    date +%Y%m%d%H%M%S -d "`stat -c %y backup.sql |cut -d. -f1`"


    A+
    JJD
  • # regexp.

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

    $ echo "2005-02-17 23:09:33.000000000" | sed 's/-//g' | sed 's/ //g' | sed 's/://g' | cut -d "." -f1
    20050217230933

    tu remplacera echo par stat.

    Je matte aussi ton bout en Perl, note que pour ce genre de manipulation online, c est bieux en awk. Zut je trouves plus mon exemple awk, mais c est plus fait pour.

    Perl est bien pour les traitements automatises sur des gros volumes. Pour le inline, vaut mieux awk ou sed.
    • [^] # Re: regexp.

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

      je veux bien te croire, mais perl, niveau couteau suisse c'est pas mal ! (et je connais mieux...)
      • [^] # Re: regexp.

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

        PUREEE POURQUOI JE PEUX EVALUER QU UN JOUR SUR DEUX ???

        y as 1h j avais 6/6 votes a donner, la j allais te plusser, et rien !

        bon ... c est quoi ton truc mieux ? ruby ? python ?

        ASM ? ^^

Suivre le flux des commentaires

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