Créer le Dossier de Sauvegarde
Fait partie de la section Les fondamentaux du Journey Terminal de Coddy — leçon 76 sur 82.
Défi
FacileMaintenant, étendons le script de sauvegarde pour créer un dossier de sauvegarde où les fichiers seront stockés.
Réécrivez backup.sh à partir de zéro pour qu'il contienne le script complet et mis à jour. Utilisez > pour la première ligne afin de remplacer le fichier, puis >> pour ajouter chaque ligne suivante :
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.shChaque ligne est entourée de guillemets simples afin que le shell écrive littéralement $source_dir et $backup_dir dans le fichier au lieu de les remplacer par leurs valeurs.
Rendez-le ensuite exécutable :
chmod +x backup.shEnfin, exécutez votre script avec documents comme entrée. Ce terminal n'est pas interactif, donc redirigez la réponse dans le script au lieu d'attendre la demande :
echo "documents" | ./backup.shVotre sortie devrait être :
Backing up: documents
Created backup folder: backupVérifiez que le dossier a été créé en exécutant ls pour lister le contenu du répertoire. La sortie devrait afficher le nouveau dossier backup à côté de vos autres fichiers.
Conseil : L'option
-pdansmkdir -pévite les erreurs si le répertoire existe déjà. Assurez-vous d'utiliser des guillemets autour de vos variables (par exemple,"$backup_dir") pour les manipuler en toute sécurité.
Essayez vous-même
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.shToutes les leçons de Les fondamentaux
4Répertoires
Créer Un RépertoireCopier Un RépertoireDéplacer Et Renommer Un RépertoireSupprimer Un RépertoireRécapitulatif - Opérations Sur Les Répertoires7Contenu de fichier
Head et TailComptage de motsCommande SortCommande UniqBases de GrepGrep avec optionsRécap - Détective de texte10Projet Analyseur de Journaux
Aperçu du ProjetAffichage du Fichier Journal2Navigation
Afficher le répertoire de travailLister les fichiersChanger de répertoireChemins absolus vs relatifsRépertoire personnel et racineRécap - Trouver son chemin5Projet Organiser les Photos
Aperçu du ProjetCréation de la Structure8Redirection
Sortie standardÉcraser vers un fichierAjouter à un fichierEntrée standardErreur standardRécapitulatif - Constructeur de logs11Permissions
Comprendre les permissionsLire les permissionsChmod avec des nombresChmod avec des symbolesPropriété des fichiersRécapitulatif - Verrouillez tout14Projet de Script de Sauvegarde
Aperçu du ProjetObtenir le Chemin Source3Fichiers
Créer Un FichierLire Un FichierCopier Un FichierDéplacer Et Renommer Un FichierSupprimer Un FichierRécapitulatif - Opérations Sur Les Fichiers6Caractères jokers et motifs
Le joker étoileLe joker point d'interrogationJokers entre crochetsCombiner les jokersRécapitulatif - Opérations sélectives9Les pipes
Qu'est-ce qu'une pipe ?Chaîner deux commandesChaîner plusieurs commandesPipe avec GrepRécapitulatif - Pipeline de données