Le vendredi 1 août 2014, 12:10:57 Francois Lafont a écrit : >[…] > Par exemple : > > a=1396459867 > b=1406879835 > diff=$(( b - a )) > days=$(( diff / 86400 )) > # etc.
Oui, du peu que l’on en connaisse, la question originale (une fois correctement lue) pouvait se traiter en (ba)sh seul : calcul et formatage de (j, h, m, s) à partir d’un nombre de secondes. Car moi-meme semble bien seulement vouloir un programme simple pour faire ça, soit avec `date`, soit avec un autre programme. Le hic, c’est qu’une durée ça n’est pas une date et qu’il n’y a pas de fonction de base pour ça. Donc il faut bien soit calculer soi-même (ce que moi-meme appelle bidouillage ? ou alors parlait-il de bidouiller la sortie de `date` pour enlever le jour de trop ?), soit utiliser quelque chose qui sache qu’une durée c’est différent d’une date. Et ce quelque chose, c’est une bibliothèque, pour Perl, C, ou autre. D’où le fait que moi-meme n’a trouvé que des références à Perl, C, Java… et le fait que, moi-même (notez l’accent ;o), voyant des manipulations de dates, une réticence à utiliser un vrai langage et une proposition d’utiliser un interprète bridé, ai couru à la défense de l’utilisation d’un vrai interprète… > > Le shell, ça va bien un peu mais ça devient vite difficile > > à maintenir > > D'accord avec ça également. > > > et très gourmand en processus inutiles. > > Là aussi, j'ajoute un bémol. Parfois le shell peut > s'avérer plus rapide qu'un autre interpréteur (comme Perl > ou autre) sur des petits programmes assez simples et courts > car, dans le temps d'exécution, il faut compter le temps > de chargement de l'interpréteur lui-même, […] Ok mais il y avait le mot-clef « devient ». Ma conclusion généralisait : le shell, c’est très bien comme glu (traitement par lot, tubes, quelques variables, etc.) mais, souvent, le problème se complexifie et, en bash, on se met alors à compliquer le script : on utilise de plus en plus de petits programmes simples (sed, grep, cut…) pour contourner les manques du shell alors qu’un seul processus interprète suffirait et serait beaucoup plus clair (parfois un simple awk). (Sans parler des UUOC ;o) -- Sylvain Sauvage -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe" vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: https://lists.debian.org/2278442.03mTHGOCGy@earendil