Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

إضافة طابع زمني

جزء من قسم الأساسيات في رحلة Terminal على Coddy. الدرس 78 من 82.

challenge icon

التحدي

سهل

دعنا نجعل اسم مجلد النسخ الاحتياطي (backup) فريدًا عن طريق إضافة طابع زمني (timestamp). بهذه الطريقة، يُنشئ كل نسخ احتياطي مجلدًا جديدًا بدلاً من الكتابة فوق المجلد السابق.

قم بتعديل backup.sh لـ:

  1. الاحتفاظ بجميع الكود الحالي من الدرس السابق
  2. استبدال backup_dir="backup" الثابت باسم ديناميكي يتضمن طابعًا زمنيًا
  3. استخدام استبدال الأوامر مع الأمر date لإنشاء طابع زمني بتنسيق YYYYMMDD_HHMMSS
  4. يجب تسمية مجلد النسخ الاحتياطي: backup_[timestamp]

ينشئ الأمر date مع محددات التنسيق أطماعًا زمنية:

date +%Y%m%d_%H%M%S

استخدم استبدال الأوامر $(command) لالتقاط هذا المخرج في متغير:

timestamp=$(date +%Y%m%d_%H%M%S)
backup_dir="backup_$timestamp"

قم بتمكين السكريبت وأدخل documents عند مطالبتك بذلك. يجب أن يبدو مخرجك كالتالي:

Backing up: documents
Created backup folder: backup_20240115_143052
Files copied successfully

سيكون الطابع الزمني في مخرجك مختلفًا بناءً على التاريخ والوقت الحاليين.

تلميح: أضف timestamp=$(date +%Y%m%d_%H%M%S) قبل تعريف backup_dir، ثم استخدم backup_dir="backup_$timestamp" لإنشاء اسم المجلد الديناميكي.

جرّب بنفسك

الطرفية
cat > backup.sh << 'EOF'
#!/bin/bash
read -p "Enter source directory: " source_dir
echo "Backing up: $source_dir"
backup_dir="backup"
mkdir -p "$backup_dir"
echo "Created backup folder: $backup_dir"
cp "$source_dir"/* "$backup_dir"
echo "Files copied successfully"
EOF
echo "documents" | bash backup.sh
ls backup

جميع دروس الأساسيات

تدرّب بنفسك: Playground لـ Terminal