Menu
Coddy logo textTech

יצירת תיקיית גיבוי

חלק מהיחידה יסודות במסלול ה-Terminal של Coddy. שיעור 76 מתוך 82.

challenge icon

אתגר

קל

עכשיו נרחיב את סקריפט הגיבוי כדי ליצור תיקיית גיבוי שבה יאוחסנו הקבצים.

כתבו מחדש את backup.sh מההתחלה, כך שיכיל את הסקריפט המלא והמעודכן. השתמשו ב־> בשורה הראשונה כדי להחליף את הקובץ, ואז ב־>> כדי להוסיף כל שורה שאחריה:

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.sh

כל שורה מוקפת במירכאות יחידות, כך שה־shell כותב לקובץ את $source_dir ואת $backup_dir כלשונם, במקום להחליף אותם בערכים שלהם.

לאחר מכן, הפכו אותו לקובץ בר־הרצה:

chmod +x backup.sh

לבסוף, הריצו את הסקריפט עם documents כקלט. הטרמינל הזה אינו אינטראקטיבי, לכן העבירו את התשובה לסקריפט במקום להמתין שיתבקש מכם להזין אותה:

echo "documents" | ./backup.sh

הפלט אמור להיות:

Backing up: documents
Created backup folder: backup

ודאו שהתיקייה נוצרה על ידי הרצת ls כדי להציג את תוכן הספרייה. הפלט אמור להציג את תיקיית backup החדשה לצד הקבצים האחרים שלכם.

רמז: הדגל -p ב־mkdir -p מונע שגיאות אם הספרייה כבר קיימת. הקפידו להשתמש במירכאות סביב המשתנים שלכם (לדוגמה, "$backup_dir") כדי לטפל בהם בבטחה.

נסו בעצמכם

טרמינל
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.sh

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: Terminal אונליין