проект в Shell Skill Tree

Восстановление набора загруженных файлов

Используйте Bash, доверенный манифест SHA256 и выборочные HTTP-загрузки для восстановления отсутствующих или повреждённых материалов с сохранением правильных файлов и личных заметок.

ПроектShell

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Восстановление набора загруженных файлов — практический проект Bash для тех, кто знает основы сценариев. Помогите организатору события восстановить отсутствующие или повреждённые материалы, сохранив правильные файлы и личные заметки. Результатом станет пригодный для использования локальный набор PDF и текстов, а также сценарии для повторного применения к другому поддерживаемому набору.

Две пошаговые лабораторные работы сначала создают опись на основе независимого доверенного манифеста SHA256, а затем используют её для выборочного восстановления по HTTP. Одно самостоятельное задание меняет коллекцию и расположение повреждённых или отсутствующих файлов. В каждой работе есть собственные файлы и локальный источник; файлы из предыдущих работ не нужны.

Чему вы научитесь

После завершения курса вы сможете:

  • классифицировать каждый необходимый файл как совпадающий, отсутствующий или отличающийся, сравнивая его реальные байты с независимым эталоном;
  • сохранять имена файлов с пробелами и распознавать допустимый пустой файл;
  • скачивать только требующие восстановления файлы с помощью curl и правильно закодированных параметров запроса;
  • проверять каждый временный файл перед заменой целевого и удалять только собственные временные файлы;
  • сохранять правильные файлы и посторонние заметки, включая их байты, режим прав, владельца и время изменения;
  • повторять завершённое восстановление без запросов на скачивание, а затем открывать и скачивать реальные локальные PDF и тексты.

Для кого этот курс

Курс предназначен для изучающих Bash, которые хотят автоматизировать решение о том, какие файлы восстанавливать, а не скачивать всё заново.

Предварительные требования: Пройдите Shell for Beginners или получите сопоставимый опыт работы с путями в терминале, аргументами сценариев, условиями и циклами. Пошаговые работы объясняют SHA256, разбор имён файлов, коды завершения, curl, временные файлы и используемый для очистки trap. Знание PowerShell и прохождение проекта аудиофрагментов не требуются.

Учебная среда: LabEx предоставляет Linux в браузере с необходимыми инструментами, оригинальными синтетическими материалами, терминалом Workspace и страницей Download Desk. Источник — контролируемая локальная HTTP-служба. Внешняя учётная запись и локальная установка программ не нужны. Названия элементов интерфейса и вывод команд остаются на английском.

Часто задаваемые вопросы

Доказывает ли совпадающая контрольная сумма, кто опубликовал файл?

Нет. Вы сравниваете байты с независимо предоставленным манифестом, который считается доверенным. Хеш выявляет расхождения с этим эталоном, но не подтверждает личность издателя. Не создавайте эталон заново из повреждённых файлов.

Что произойдёт, если скачивание завершится ошибкой?

Отказ HTTP, прерванная передача или неверное содержимое с HTTP 200 не должны заменять целевой файл. Публикация происходит пофайлово: ранее проверенное восстановление может сохраниться, если последующий файл получить не удалось. Это не транзакция для всего набора и не гарантия восстановления после аварийного завершения.

Скачает ли повторный запуск правильные файлы заново?

Нет. Совпадающие файлы, включая допустимый пустой файл, сохраняются. Повторный запуск для полного набора не делает ни одного запроса на скачивание и сохраняет набор и личные заметки.

Преподаватель

labby
Labby
Labby is the LabEx teacher.

Рекомендовано для вас

no data