הודעת הצלחה
חלק מהיחידה יסודות במסלול ה-Terminal של Coddy. שיעור 79 מתוך 82.
אתגר
קלבואו נשלים את סקריפט הגיבוי על ידי הוספת הודעת הצלחה סופית שמסכמת מה גובה.
שנו את backup.sh כך ש:
- תשאירו את כל הקוד הקיים מהשיעור הקודם (הקובץ
backup.shבסביבת העבודה שלכם הוא הגרסה הזאת, שמוצגת למטה) - אחרי ההודעה "Files copied successfully", הוסיפו שורת סיכום סופית
- תדפיסו:
Backup complete: [source_dir] -> [backup_dir]
כך נראה הסקריפט בסוף השיעור הקודם:
#!/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"הדרך המהירה ביותר לערוך אותו היא לכתוב מחדש את כל הקובץ באמצעות cat > backup.sh << 'EOF' ... EOF, ולהוסיף את השורה החדשה לפני ה-EOF הסוגר.
הריצו את הסקריפט והזינו documents כשתתבקשו. הפלט שלכם אמור להיראות כך:
Backing up: documents
Created backup folder: backup_20240115_143052
Files copied successfully
Backup complete: documents -> backup_20240115_143052חותמת הזמן בפלט שלכם תהיה שונה בהתאם לתאריך ולשעה הנוכחיים.
כל הכבוד! בניתם סקריפט גיבוי שלם ש:
- מבקש מהמשתמש ספריית מקור
- יוצר תיקיית גיבוי עם חותמת זמן
- מעתיק את כל הקבצים לגיבוי
- מספק משוב ברור בכל שלב
רמז: הוסיפו
echo "Backup complete: $source_dir -> $backup_dir"בסוף הסקריפט כדי להציג את הודעת הסיכום הסופית.
נסו בעצמכם
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כל השיעורים ביחידה יסודות
7תוכן הקובץ
ראש וזנבספירת מיליםפקודת המיוןפקודת הסינון לכפילויותיסודות grepgrep עם דגליםסיכום – בלש/ית טקסט13יסודות כתיבת סקריפטים ב-Shell
מהו סקריפט Shellיצירה והרצה של סקריפטמשתנים בסקריפטיםקלט משתמש בסקריפטיםמשפט ifלולאת forלולאת whileסיכום – נחשו את המספר2ניווט
הצגת ספריית העבודההצגת קבציםשינוי ספרייהנתיבים מוחלטים לעומת יחסייםספריית הבית וספריית השורשסיכום – מצאו את הדרך8ניתוב מחדש
פלט סטנדרטיכתיבה לקובץ תוך דריסת התוכןהוספה לקובץקלט סטנדרטישגיאה סטנדרטיתסיכום – בונה יומני רישום14פרויקט סקריפט לגיבוי
סקירת הפרויקטקבלת נתיב המקורתרגלו בעצמכם: Terminal אונליין