Terminal : convertir une heure UNIX
Les développeurs sont souvent confrontés à l’heure UNIX, une mesure du temps qui correspond au nombre de secondes écoulées depuis le 1er janvier 1970 (ou presque). Elle présente l’avantage d’être simple à manipuler, mais elle est difficilement lisible : la rédaction de cette phrase, par exemple, a commencé à l’heure UNIX 1403537913.
Il faut donc bien souvent la convertir, ce que fait très bien un site comme Epoch Converter, mais encore faut-il avoir une connexion au réseau. Les utilisateurs d’Alfred peuvent se tourner vers le workflow conçu par le développeur Thomas Upton : il fournit la même sortie que la commande date -jf "%s" "1403537913" +"%a %b %d %T %Z %Y"
, simplement en tapant ts
(suivie d’une espace et de l’heure UNIX).
Le résultat produit, dans notre cas, serait Lun jui 23 17:38:33 CEST 2014
: il est utile s’il s’agit simplement d’avoir une référence, beaucoup moins s’il s’agit de récupérer une valeur pour un développement en cours. La commande date -jf "%s" "1403537913" +"%Y%m%dT%T%z"
produit un timestamp moins lisible, mais qui respecte la norme RFC 3339, 20140623T17:38:33+0200
dans notre exemple.
Pour l’intégrer à un script ou un lanceur, il faudra utiliser cette syntaxe : echo -n "1403537913" | xargs -J {} date -j -f "%s" {} +"%Y%m%dT%T%z"
.
le format ISO est la référence
http://fr.wikipedia.org/wiki/ISO_8601
il offre la possibilité de varier les format tout en restant standard
A+JYT
Tiens, moi je cherchais un truc tout con : additionner ou soustraire des heures, secondes, minutes avec un petit utilitaire sans avoir à passer par numbers ou excel.
Pas trouvé...
Contactez moi via le forum pour me donner plus d'éléments sur vos besoins et je serait en mesure de vous faire une petite App...
Merci, c'est gentil, c'était juste un besoin ponctuel que j'ai eu il n'y a pas si longtemps :
monter une vidéo avec une dizaine de bouts de films différents :
Certains où l'heure, les minutes et les secondes apparaissaient à certains moments sur le film, mais où la date de la vidéo par elle même était erronée et d'autres "bandes" apparemment semblables mais où l'incrémentation du temps était exacte sur la vidéo.
Et donc pour caler, voire synchroniser les pistes, c'aurait été sympa d'avoir une "calculatrice" pour additionner ou retrancher du temps pour bien placer les vidéos les unes par rapport aux autres.
Maintenant peut-être qu'Applescript est simple d'utilisation, mais, clairement, c'est pas mon domaine ni ma tasse de thé.
En tout cas merci pour cette proposition, je suis qu'une telle petite application aurait sa place sur l'Applestore, en tout cas j'en ai pas vu de semblable.
Ou mieux un plugin pour Final Cut Pro, peut-être existe-t-il, en tout cas je ne l'ai pas trouvé...
Allais-tu faire la même blague que moi ? ; Nous sommes le XX-après UNIX.
J'ai voulu la faire mais j'ai été bloqué par ce truc tout con que tu cherche : Soustraire le 25/06 2014 à Minuit au 01/01/1970 à 00h00, et trouver un résultat en jours, secondes, nanosecondes...lol
@yark
Pas difficile à faire en AppleScript ! Il faut un peu se creuser le cerveau pendant quelques minutes, c'est tout !! :)
@world28 :
Et si on ne connaît pas "Apple script"? ☺️
On apprend en 2' ! Mais après c'est aussi l'usage que l'on fait de son mac. Certes on n'est pas obligé d'apprendre ce langage hyperfacile mais cela simplifie vraiment la vie. Donc c'était un simple conseil ! :)
@world28 :
Une petite question, le développement est votre métier ou une passion ?
Si oui je te crois volontiers que l'AppleScript s'apprend en 2 mn... Pour vous.
Mais pour quelqu'un de totalement ignorant des langages informatique et des concepts sous-jacents, structures, syntaxe, et. ça ne va pas prendre 2 mn.
Ne prenez pas votre cas pour une généralité svp.
une petite astuce avec la commande date
date -j -f "%Y-%m-%d" "2010-03-00" "+%s"
le 00 Mars 2010
date -jf "%s" $(date -j -f "%Y-%m-%d" "2010-03-00" "+%s")
Dim 28 fév 2010 20:02:16 CET
cela permet de facilement savoir quel est le dernier jour de févier.
A+JYT
Je sais pas, mais lancer "date" tout simplement suffit en fait ^^
C'est l'Unix moyen de partir au C Shell !
Joli…. :)
Il y a presque 2000 commandes accessible via le Terminal. On va avoir droit à une new sur une d'entre elle piochée au hasard de temps en temps ?