prog:bashfonctutile

Bash Fonction Utile


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 sous la forme : 2006-10-01 15:00

date2stamp () {
    date --utc --date "$variableDate" +%s
}
stamp2date (){
    date --utc --date "1970-01-01 $Timestamp sec" "+%Y-%m-%d %T"
}
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”
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.

  • prog/bashfonctutile.txt
  • Dernière modification : 27/06/2019 15:27
  • de Martin