Menu
CoddyTech

Копирование файлов

Часть раздела Основы путешествия по Terminal на Coddy. Урок 77 из 82.

challenge icon

Задание

Легко

Теперь пришло время добавить основную функциональность: копирование файлов из исходного каталога в папку резервной копии.

Измените backup.sh, чтобы:

  1. Сохранить весь существующий код из предыдущего урока: он уже находится в backup.sh, поэтому добавьте новые строки с помощью >>, каждую заключив в одинарные кавычки, как и раньше
  2. После создания папки резервной копии использовать cp, чтобы скопировать все файлы из исходного каталога в каталог резервной копии
  3. Вывести сообщение: Files copied successfully

Запустите скрипт, передав ему documents в качестве входных данных. Этот терминал не интерактивный, поэтому передайте ответ скрипту через конвейер и запустите его с помощью bash: echo "documents" | bash backup.sh. Результат должен быть таким:

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

После запуска скрипта убедитесь, что файлы скопированы, выведя содержимое папки backup с помощью ls backup.

Подсказка: Используйте cp "$source_dir"/* "$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
echo 'backup_dir="backup"' >> backup.sh
echo 'mkdir -p "$backup_dir"' >> backup.sh
echo 'echo "Created backup folder: $backup_dir"' >> backup.sh
chmod +x backup.sh
echo "documents" | ./backup.sh
ls

Все уроки раздела Основы

Потренируйтесь самостоятельно: Песочница Terminal