Menu
CoddyTech

Tạo thư mục sao lưu

Thuộc phần Kiến thức cơ bản trong hành trình Terminal của Coddy. Bài học 76 trên 82.

challenge icon

Thử thách

Dễ

Bây giờ, hãy mở rộng script sao lưu để tạo một thư mục sao lưu, nơi các tệp sẽ được lưu trữ.

Viết lại backup.sh từ đầu để chứa toàn bộ script đã cập nhật. Dùng > cho dòng đầu tiên để thay thế tệp, sau đó dùng >> để thêm từng dòng tiếp theo:

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

Mỗi dòng được đặt trong dấu nháy đơn để shell ghi nguyên văn $source_dir và $backup_dir vào tệp, thay vì thay chúng bằng các giá trị tương ứng.

Sau đó, cấp quyền chạy cho tệp:

chmod +x backup.sh

Cuối cùng, chạy script với đầu vào là documents. Terminal này không hỗ trợ tương tác, vì vậy hãy truyền câu trả lời vào script thay vì chờ được nhắc nhập:

echo "documents" | ./backup.sh

Đầu ra của bạn sẽ là:

Backing up: documents
Created backup folder: backup

Chạy ls để liệt kê nội dung thư mục và xác minh thư mục đã được tạo. Đầu ra sẽ hiển thị thư mục backup mới bên cạnh các tệp khác.

Gợi ý: Cờ -p trong mkdir -p ngăn lỗi nếu thư mục đã tồn tại. Hãy đặt các biến trong dấu nháy (ví dụ: "$backup_dir") để xử lý chúng an toàn.

Tự làm thử

Terminal
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

Tất cả bài học trong Kiến thức cơ bản

Tự luyện tập: Playground Terminal