Menu
Coddy logo textTech

Komunikat o powodzeniu

Część sekcji Podstawy ścieżki Terminal w Coddy. Lekcja 79 z 82.

challenge icon

Wyzwanie

Łatwy

Dokończmy skrypt tworzenia kopii zapasowej, dodając końcowy komunikat o powodzeniu, który podsumuje, co zostało skopiowane.

Zmodyfikuj backup.sh, aby:

  1. Zachować cały istniejący kod z poprzedniej lekcji (plik backup.sh w Twoim obszarze roboczym zawiera tę wersję, pokazaną poniżej)
  2. Po komunikacie "Files copied successfully" dodać końcowy wiersz podsumowania
  3. Wyświetlić: Backup complete: [source_dir] -> [backup_dir]

Skrypt w wersji z końca poprzedniej lekcji:

#!/bin/bash
read -p "Enter directory to backup: " source_dir
echo "Backing up: $source_dir"
backup_dir="backup_$(date +%Y%m%d_%H%M%S)"
mkdir "$backup_dir"
echo "Created backup folder: $backup_dir"
cp "$source_dir"/* "$backup_dir"/
echo "Files copied successfully"

Najszybciej edytujesz go, przepisując cały plik za pomocą cat > backup.sh << 'EOF' ... EOF i dodając nowy wiersz przed zamykającym EOF.

Uruchom skrypt i po wyświetleniu monitu wpisz documents. Wynik powinien wyglądać tak:

Backing up: documents
Created backup folder: backup_20240115_143052
Files copied successfully
Backup complete: documents -> backup_20240115_143052

Znacznik czasu w Twoim wyniku będzie inny, zależnie od bieżącej daty i godziny.

Gratulacje! Udało Ci się zbudować kompletny skrypt tworzenia kopii zapasowej, który:

  • Prosi użytkownika o podanie katalogu źródłowego
  • Tworzy folder kopii zapasowej ze znacznikiem czasu
  • Kopiuje wszystkie pliki do kopii zapasowej
  • Wyświetla czytelne informacje zwrotne na każdym etapie

Podpowiedź: Dodaj echo "Backup complete: $source_dir -> $backup_dir" na końcu skryptu, aby wyświetlić końcowy komunikat podsumowujący.

Spróbuj swoich sił

Terminal
cat > backup.sh << 'EOF'
#!/bin/bash
echo "Enter folder to backup:"
read folder
echo "Backing up: $folder"
timestamp=$(date +%Y%m%d_%H%M%S)
backup_dir="backup_$timestamp"
mkdir "$backup_dir"
echo "Created backup folder: $backup_dir"
cp "$folder"/* "$backup_dir"/
echo "Files copied successfully"
EOF
chmod +x backup.sh
echo "documents" | bash backup.sh

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Terminal