>_ IzzyLab

Практическое задание

Достань файл из вложенного архива

сложно

Есть архив /root/outer.tar.gz, внутри которого лежит другой архив inner.tar, а уже в нём — файл flag.txt. Достань содержимое flag.txt и запиши его в /root/flag.txt.

Что потренируешь:
  • tar
  • вложенные архивы
  • конвейеры
  • stdin/stdout
  • архивы

Разбор темы

Здесь архив вложен в архив — «матрёшка»: во внешнем .tar.gz лежит inner.tar, а в нём искомый файл. Распаковывать нужно послойно, снимая по одному уровню за раз. tar умеет и писать распакованное в stdout (ключ -O), и читать архив из stdin (-f -), поэтому слои можно либо разбирать по шагам во временном каталоге, либо соединить два вызова в конвейер.

Что проверяется

  1. флаг извлечён из вложенного архива

Как это выглядит