Bash Fonction Utile
Fonction Utilitaire
Verifier les BadBlocks sur une clé ou un disque USB
Un disque ou clé USB ne gére pas la gestion d'erreur SMART. Seul le SATA et L'E-SATA en sont capable. Pour cela il faudra écrire sur chaque bit de la clé ou du disque pour savoir il est bon.
badblocks -w -s -o usbstick.log /dev/sdz
usbstick.log étant un chemin vers un fichier de log. /dev/sdz étant le disque à analysé.
Date
Date => Timestamp
Date sous la forme : 2006-10-01 15:00
date2stamp () { date --utc --date "$variableDate" +%s }
Timestamp => Date
stamp2date (){ date --utc --date "1970-01-01 $Timestamp sec" "+%Y-%m-%d %T" }
Différence Date
dateDiff (){ case $1 in -s) sec=1; shift;; -m) sec=60; shift;; -h) sec=3600; shift;; -d) sec=86400; shift;; *) sec=86400;; esac dte1=$(date2stamp $1) dte2=$(date2stamp $2) diffSec=$((dte2-dte1)) if ((diffSec < 0)); then abs=-1; else abs=1; fi echo $((diffSec/sec*abs)) }
Peut prendre un paramètre :
- -s résultat en seconde
- -m résultat en minute
- -h résultat en heure
- -d résultat en jour (par Défaut)
Exemple :
- dateDiff -s “2006-10-01” “2006-10-32”
- dateDiff -m “2006-10-01” “2006-10-32”
- dateDiff -h “2006-10-01” “2006-10-32”
- dateDiff -d “2006-10-01” “2006-10-32”
- dateDiff “2006-10-01” “2006-10-32”
Fonctionne aussi avec l'heure seul :
- dateDiff -s “17:55” “23:15:07”
- dateDiff -m “17:55” “23:15:07”
Calcul de Date
echo $(date +%Y-%m-%d) echo $(date +%Y-%m-%d -d '-2 days')
Le resultat donne :
2017-01-11 2017-01-09
L'argument -d permet de décrire une action avec une chaine de caractère.