#1 Le 27/02/2007, à 17:06
- ReMs_ReMY
[résolu] Shell (sh) opération sur les dates unix
Bonjour,
Je débute en script shell.
Comment faire pour avoir l'heure unix actuelle de type entier ?
Je veux faire la différence entre deux dates en seconde unix :
#!bin/sh
debut= # (date +%s) mais en variable de type entier (pour soustraire)
# ... code ...
fin= # (date +%s) en variable de type entier
diff=(fin-debut)
Merci !
Dernière modification par ReMs_ReMY (Le 27/02/2007, à 17:55)
Hors ligne
#2 Le 27/02/2007, à 17:45
- kaworu
Re : [résolu] Shell (sh) opération sur les dates unix
salut !
#!/bin/bash
debut=$(date +%s)
sleep 5
fin=$(date +%s)
let "diff = fin - debut" # ou avec l'expension arithmétique : diff=((fin - debut))
echo $diff
sauf erreur, l'expension arithmétique ((expr)) est propre à Bash et au Korn Shell (Bash l'a repris du Korn en faite). let est un built-in bash qu'il devrait y avoir dans tous les shells, autrement expr peut aussi faire le boulot (coreutils) : diff=$(expr $fin - $debut)
Dans tous les cas, faire un script avec un shabang /bin/sh est une très mauvaise habitude. Si tu veux écrire des script POSIX il te faudra du café bien fort et une solide connaissance des shells. Je te conseil de faire plutôt des scripts bash, à moins que tu aie vraiment envie de faire un script sh.
Dernière modification par kaworu (Le 27/02/2007, à 17:46)
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#3 Le 27/02/2007, à 17:51
- ReMs_ReMY
Re : [résolu] Shell (sh) opération sur les dates unix
Waouw ! Merci du conseil, je vais me documenter.
Hors ligne
#4 Le 27/02/2007, à 17:54
- kaworu
Re : [résolu] Shell (sh) opération sur les dates unix
Le guide ABS (Advanced Bash Scripting) est une véritable référence pour Bash, et (oh ! joie !) il existe une version traduite :
http://abs.traduc.org/
C'est une référence solide, avec pleins d'exemples. Bonne lecture.
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#5 Le 27/02/2007, à 17:56
- ReMs_ReMY
Re : [résolu] Shell (sh) opération sur les dates unix
J'ai meme pas eu le temps de lancer google !
Merci encore !
Hors ligne