В работе с архивами часто возникает необходимость быстро узнать, какие файлы находятся внутри, либо извлечь только один‑два нужных элемента, не распаковывая весь пакет. В этой статье мы разберём, как это сделать в разных операционных системах и с помощью самых популярных утилит.
Содержание
- Что такое архив?
- Популярные форматы архивов
- Командные утилиты
- Графические программы
- Частичное извлечение файлов
- Работа со сплит‑архивами
- Полезные советы
Что такое архив?
Архив – это один файл, в котором упакованы несколько других файлов и/или каталогов. При упаковке данные обычно сжимаются, что экономит место на диске и упрощает передачу по сети.
Популярные форматы архивов
- ZIP – самый распространённый формат, поддерживается почти всеми ОС.
- TAR – «tape archive», часто используется в Linux совместно с компрессорами gzip (.tar.gz) и bzip2 (.tar.bz2).
- RAR – проприетарный формат, известный своей высокой степенью сжатия.
- 7z – формат от программы 7‑Zip, поддерживает множество алгоритмов сжатия.
- ISO – образ оптического диска, часто рассматривается как архив.
Командные утилиты
Ниже перечислены команды, позволяющие просмотреть содержимое архива без полного распаковывания.
Linux / macOS
- zipinfo / unzip -l – выводит список файлов в ZIP‑архиве.
- tar -tvf archive.tar – показывает содержимое TAR‑файла.
- tar -tzvf archive.tar.gz – список файлов в сжатом TAR.GZ.
- unrar l archive.rar – список файлов в RAR‑архиве.
- 7z l archive.7z – список файлов в 7z‑архиве.
Пример вывода команды unzip -l:
$ unzip -l example.zip Archive: example.zip Length Date Time Name --------- ---------- ----- ---- 1024 2026-07-08 12:34 docs/readme.txt 20480 2026-07-07 09:15 images/photo.jpg 51200 2026-07-06 18:00 src/main.cpp --------- ------- 72604 3 files
Windows (cmd / PowerShell)
- tar (встроенный в Windows 10+). Пример:
tar -tf archive.tar. - PowerShell +
Expand-Archive -Path archive.zip -DestinationPath . -WhatIf– флаг-WhatIfпокажет, какие файлы бы извлеклись. - Утилиты 7z.exe и unrar.exe работают так же, как в Linux (см. ниже).
Кроссплатформенные утилиты
| Утилита | Платформы | Команда для списка |
|---|---|---|
| 7-Zip (7z) | Windows, Linux, macOS | 7z l archive.ext |
| unzip | Linux, macOS, Windows (через Cygwin/WSL) | unzip -l archive.zip |
| unrar | Linux, macOS, Windows | unrar l archive.rar |
Графические программы
Если вы предпочитаете работать в графическом интерфейсе, то подойдёт одна из следующих программ:
- WinRAR (Windows) – двойной клик по архиву открывает окно со списком файлов.
- 7‑Zip File Manager (Windows) – аналогично, плюс возможность просматривать содержимое без распаковки.
- Archive Manager (File Roller) (Linux GNOME) – открывает ZIP, TAR, 7z и др.
- The Unarchiver (macOS) – простое приложение для просмотра и извлечения.
Во всех этих программах достаточно открыть архив и посмотреть список файлов в главном окне. Чтобы извлечь только часть, выделите нужные элементы и выберите Extract selected (или аналог).
Частичное извлечение файлов
Иногда нужно не только увидеть список, но и вытащить один‑два файла. Ниже – примеры команд для разных форматов.
ZIP
unzip -l archive.zip unzip archive.zip docs/readme.txt unzip archive.zip '.txt'
TAR / TAR.GZ
tar -tvf archive.tar tar -xvf archive.tar path/to/file.txt tar -xvf archive.tar --wildcards '*.png'
RAR
unrar l archive.rar unrar e archive.rar path oile.docx unrar x archive.rar /output/directory/
7z
7z l archive.7z 7z e archive.7z path/inside/archive.jpg 7z x archive.7z -o./extracted *.pdf
Работа со сплит‑архивами
Большие архивы иногда разбиваются на части (например, archive.part01.rar, archive.part02.rar …). Чтобы посмотреть содержимое, достаточно иметь первую часть и запустить обычную команду:
unrar l archive.part01.rar
Для извлечения конкретного файла:
unrar e archive.part01.rar path/to/needed/file.txt
Если вы используете 7‑Zip, команда будет такой же:
7z l archive.001 7z e archive.001 path/inside/file.mp3
Полезные советы
- Не распаковывайте в корень системы. Всегда указывайте отдельную папку (
-dв 7z,-oв unrar) – это убережёт от случайного перезаписывания файлов. - Проверяйте контрольные суммы. После частичного извлечения полезно сравнить
md5илиsha256с оригиналом, если он известен. - Используйте
headиtailдля больших списков. Если архив содержит тысячи файлов, вывод может быть громоздким. Пример:tar -tvf big.tar | head -n 20. - Фильтрация по дате. В tar можно добавить
--newer-mtime "2026-01-01"для показа только файлов, изменённых после указанной даты. - Автоматизация. В скриптах удобно использовать
grepдля поиска нужных путей:unzip -l archive.zip | grep "report".
Теперь вы знаете, как быстро посмотреть содержимое любого архива и извлечь из него только нужные файлы, не тратя время и ресурсы на полную распаковку. Если остались вопросы – смело экспериментируйте с приведёнными командами, а при необходимости обратитесь к справке конкретной утилиты (например, man unzip или 7z --help).