• [^] # Re: Mes remarques

    Posté par . En réponse au message Premier script bash pour backups, je tente un peu plus ambitieux. Évalué à 1.

    #!/usr/bin/env bash
    LOG="/var/log/backup.log" # Fichier log
    MPT="/mnt/backup" # Point de montage destination
    SRC="/home/user/Documents" # Répertoire source
    DST="$MPT/Documents" # Répertoire destination
    # Pour rediriger stdout et stderr en ajout dans le fichier log
    exec &>> "$LOG"
    # Fonction pour faire précéder les messages par la date heure
    dateMsg() {
     printf '%(%Y-%m-%d %H:%M:%S)T %s\n' -1 "1ドル"
    }
    # Pour séparer les logs dans le fichier
    printf '\n'
    # Si $MPT n'est PAS un point de montage
    if ! mountpoint -q "$MPT"; then
     dateMsg "Disque de backup non monté."
     exit
    fi
    dateMsg "Lancement du backup ..."
    # Si l'exécution de rsync provoque une erreur
    if ! rsync --verbose --archive --delete "$SRC" "$DST"; then
     dateMsg "Erreur pendant le backup."
     exit
    fi
    dateMsg "Backup terminé avec succès."

    ... et dans ce royaume, ceux qui y voient un peu plus clair sont parfois très mal vus.