Menu
Coddy logo textTech

Başarı Mesajı

Coddy'nin Terminal Journey'sinin Temeller bölümünün bir parçası. Ders 79 / 82.

challenge icon

Görev

Kolay

Yedekleme betiğine, nelerin yedeklendiğini özetleyen son bir başarı mesajı ekleyerek tamamlayalım.

backup.sh dosyasını şu şekilde değiştir:

  1. Önceki dersteki mevcut kodun tamamını koru (çalışma alanındaki backup.sh aşağıda gösterilen bu sürümdür)
  2. "Files copied successfully" mesajından sonra son bir özet satırı ekle
  3. Şunu yazdır: Backup complete: [source_dir] -> [backup_dir]

Önceki dersin sonunda betiğin mevcut hâli:

#!/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"

Dosyayı düzenlemenin en hızlı yolu, yeni satırı kapanış EOF'undan önce ekleyerek dosyanın tamamını cat > backup.sh << 'EOF' ... EOF ile yeniden yazmaktır.

Betiği çalıştır ve istendiğinde documents gir. Çıktın şöyle görünmelidir:

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

Çıktındaki zaman damgası, geçerli tarih ve saate bağlı olarak farklı olacaktır.

Tebrikler! Şunları yapan eksiksiz bir yedekleme betiği oluşturdun:

  • Kullanıcıdan bir kaynak dizini ister
  • Zaman damgalı bir yedekleme klasörü oluşturur
  • Tüm dosyaları yedeğe kopyalar
  • Her adımda net geri bildirim sağlar

İpucu: Son özet mesajını görüntülemek için betiğinin sonuna echo "Backup complete: $source_dir -> $backup_dir" ekle.

Kendin dene

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

Temeller bölümündeki tüm dersler

Kendi başına pratik yap: Terminal playground