IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

[bash] convertir l'heure en format hexadecimal en format lisible 00:00:00


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2005
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 22
    Par défaut [bash] convertir l'heure en format hexadecimal en format lisible 00:00:00
    bonjour, j'ai dans un fichier que je dois traité par script bash l'heure en format hexadecimal, que je dois convertir en format habituel 00:00:00. pouvez vous m'aider ?
    Merci beaucoup d'avance

  2. #2
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 349
    Par défaut
    Bonjour,

    Un extrait du fichier serait pratique pour voir à quoi ressemble ta fameuse heure en hexadécimal...

  3. #3
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    si les valeurs sont separées suffit de les injecter dans dc ou bc et de faire les convertions et de remettre le texte en forme.
    sur le principe c'est donc très simple.

    là où ça peut se compliquer si c'est une valeurs en secondes hexa ... mais ça reste tout à fait faisable....

  4. #4
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 349
    Par défaut
    Pas besoin de bc ou dc, bash sait très bien faire de la conversion de base:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ echo "0x64 en décimal donne "$((16#64))
    0x64 en décimal donne 100
    Et si le temps est exprimé en seconde, on peut par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $ printf "%0x\n" $(date +%s)
    521d229e
    $ date --date="@$((16#521d229e))" +%H:%M:%S
    00:05:18
    Mais bon, la seule chose que l'on sait pour le moment, c'est qu'il a des données en hexa dont on ne connait pas la taille qui représentent des horaires sans connaitre non plus le format...

  5. #5
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 658
    Par défaut
    Code bash4 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $ printf -v hexPoch '%0x' $(date +%s)
    $ printf '%(%H:%M:%S)T\n' $((16#$hexPoch))
    01:14:13
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  6. #6
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    bien vu j'avais oublié qu'on pourvait changer de base directement au shell

Discussions similaires

  1. [AC-2010] Comment convertir une heure au format AM/PM en format 24 heures ?
    Par silhouette dans le forum Access
    Réponses: 2
    Dernier message: 24/06/2015, 23h50
  2. Convertir une heure GMT en heure française
    Par pouli dans le forum Langage
    Réponses: 2
    Dernier message: 20/07/2006, 09h57
  3. Convertir un fichier .jar dans un autre format.
    Par Strappal dans le forum Java ME
    Réponses: 2
    Dernier message: 29/06/2006, 19h32
  4. Convertir 1 partition au format RAW en format NTFS
    Par anszy8 dans le forum Composants
    Réponses: 2
    Dernier message: 01/04/2006, 22h36
  5. Comment convertir une heure (TDateTime) locale en UTC/GMT
    Par rconty dans le forum C++Builder
    Réponses: 2
    Dernier message: 16/05/2005, 10h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo