Retour au cours

Créer un script d'automatisation pratique (Sauvegarde automatique)

Masterclass Termux : De zéro à expert Linux sur Android

33. Créer un script d'automatisation pratique (Sauvegarde automatique)

Appliquons nos connaissances en scripting pour créer un script utile : sauvegarder notre répertoire home Termux vers le stockage partagé d'Android.

Prérequis

Assurez-vous d'avoir exécuté termux-setup-storage et de connaître votre chemin de stockage partagé (~/storage/shared).

Le script de sauvegarde (termux_backup.sh)

Nous utiliserons la commande tar pour l'archivage et la compression.

bash $ nano termux_backup.sh

Contenu :

bash #!/bin/bash

--- Variables de configuration ---

BACKUP_DIR="/data/data/com.termux/files/home" TARGET_DIR="/data/data/com.termux/files/home/storage/downloads/Termux_Backups" DATE_STAMP=$(date +%Y-%m-%d_%H%M%S) BACKUP_FILE="termux_backup_${DATE_STAMP}.tar.gz"

echo "Démarrage de la sauvegarde du Home de Termux..."

1. Créer le répertoire cible s'il n'existe pas

if [ ! -d "$TARGET_DIR" ]; then mkdir -p "$TARGET_DIR" echo "Répertoire cible créé : $TARGET_DIR" fi

2. Créer l'archive compressée (en excluant le dossier de sauvegarde lui-même)

-c: create, -z: compress (gzip), -v: verbose, -f: filename

cd $BACKUP_DIR tar -czvf "$TARGET_DIR/$BACKUP_FILE" --exclude='storage' --exclude='Termux_Backups' ./*

if [ $? -eq 0 ]; then echo "\nSUCCÈS : Sauvegarde créée à l'emplacement $TARGET_DIR/$BACKUP_FILE" echo "Taille : $(du -h $TARGET_DIR/$BACKUP_FILE | awk '{print $1}')" else echo "\nERREUR : La sauvegarde a échoué." fi

Rendre exécutable : chmod +x termux_backup.sh

Lancer : ./termux_backup.sh

Ce script illustre l'utilisation de variables, de conditions et de commandes externes (tar, du, awk) travaillant ensemble pour l'automatisation.