Menu
Coddy logo textTech

Creare la cartella di backup

Fa parte della sezione Fondamenti del percorso Terminal di Coddy. Lezione 76 di 82.

challenge icon

Sfida

Facile

Ora estendiamo lo script di backup per creare una cartella di backup in cui verranno archiviati i file.

Riscrivi backup.sh da zero, in modo che contenga lo script completo e aggiornato. Usa > per la prima riga, così da sostituire il file, poi >> per aggiungere ogni riga successiva:

echo '#!/bin/bash' > backup.sh
echo 'read -p "Enter source directory: " source_dir' >> backup.sh
echo 'echo "Backing up: $source_dir"' >> backup.sh
echo 'backup_dir="backup"' >> backup.sh
echo 'mkdir -p "$backup_dir"' >> backup.sh
echo 'echo "Created backup folder: $backup_dir"' >> backup.sh

Ogni riga è racchiusa tra apici singoli, così la shell scrive letteralmente $source_dir e $backup_dir nel file invece di sostituirli con i rispettivi valori.

Poi rendilo eseguibile:

chmod +x backup.sh

Infine, esegui lo script usando documents come input. Questo terminale non è interattivo, quindi invia la risposta allo script tramite una pipe invece di aspettare che venga richiesta:

echo "documents" | ./backup.sh

Il tuo output dovrebbe essere:

Backing up: documents
Created backup folder: backup

Verifica che la cartella sia stata creata eseguendo ls per elencare i contenuti della directory. L'output dovrebbe mostrare la nuova cartella backup insieme agli altri file.

Suggerimento: Il flag -p in mkdir -p evita errori se la directory esiste già. Assicurati di racchiudere le variabili tra virgolette (ad esempio, "$backup_dir") per gestirle in modo sicuro.

Provalo tu

Terminale
echo '#!/bin/bash' > backup.sh
echo 'read -p "Enter source directory: " source_dir' >> backup.sh
echo 'echo "Backing up: $source_dir"' >> backup.sh
chmod +x backup.sh
echo "documents" | ./backup.sh

Tutte le lezioni di Fondamenti

Esercitati da solo: Playground Terminal