Imaginez que nous voulions sauvegarder le contenu d’un répertoire documents dans un autre répertoire backup.

Voici le contenu de sauvegarde.sh

#!/bin/bash

# Ce script est conçu pour sauvegarder le contenu du répertoire 'documents' dans le répertoire 'backup'

SOURCE_DIRECTORY="/chemin/absolu/vers/documents"
BACKUP_DIRECTORY="/chemin/absolu/vers/backup"

# Vérifier que le répertoire source existe
if [ ! -d "$SOURCE_DIRECTORY" ]; then
    echo "Erreur : Le répertoire source $SOURCE_DIRECTORY n'existe pas."
    exit 1
fi

# Si le répertoire de sauvegarde n'existe pas, le créer
if [ ! -d "$BACKUP_DIRECTORY" ]; then
    mkdir "$BACKUP_DIRECTORY"
fi

# Copier les fichiers
cp -R "$SOURCE_DIRECTORY"/* "$BACKUP_DIRECTORY"

# Vérifier si la copie a réussi
if [ $? -eq 0 ]; then
    echo "Sauvegarde effectuée avec succès."
else
    echo "Erreur lors de la sauvegarde."
    exit 1
fi

Utilisation :

  1. Assurez-vous que les chemins pour SOURCE_DIRECTORY et BACKUP_DIRECTORY sont correctement définis.
  2. Rendez le script exécutable avec la commande chmod +x sauvegarde.sh.
  3. Exécutez le script avec ./sauvegarde.sh.

Automatisation avec Cron :

Si vous voulez exécuter ce script automatiquement tous les jours à 23h00 :

  1. Ouvrez votre crontab avec crontab -e.
  2. Ajoutez la ligne suivante :

00 23 * * * /chemin/absolu/vers/sauvegarde.sh

Avec cela, votre script de sauvegarde s’exécutera automatiquement chaque jour à 23h00. Assurez-vous de remplacer /chemin/absolu/vers/sauvegarde.sh par le chemin réel vers votre script.