Чтобы посмотреть, какие файлы содержит архив, не распаковывая его, используйте команды просмотра в Терминале: unzip -l для ZIP-файлов или tar -tf для архивов TAR. В этом руководстве показано, как проверить имена файлов, структуру папок и доступные сведения, не извлекая файлы из архива.
Просмотр списка файлов ZIP-архива из Finder с помощью Терминала
Для ZIP-файла начните с команды unzip -l. Строчная опция -l выводит имена записей, их несжатый размер и даты изменения. Команда unzip без опции просмотра обычно извлекает файлы в текущую папку, поэтому оставьте эту опцию в команде. Это поведение описано в руководстве Apple к распространяемой версии unzip.
- Откройте Терминал и оставьте на экране окно Finder, в котором находится ZIP-файл.
- Введите
/usr/bin/unzip -lи поставьте пробел. Пока не нажимайтеReturn. - Перетащите ZIP-файл из Finder в окно Терминала после пробела.
- Убедитесь, что команда начинается с
/usr/bin/unzip -l, за которым следует путь к архиву, затем нажмитеReturn.
При перетаскивании файла в Терминал вставляется его абсолютный путь, как описано в руководстве Apple по Терминалу. Так вам не придётся переходить в папку архива перед просмотром списка файлов.
Например, если на Рабочем столе есть временный ZIP-файл с именем Archive Inspection Demo.zip, полная команда будет такой:
/usr/bin/unzip -l "$HOME/Desktop/Archive Inspection Demo.zip"
Путь в кавычках позволяет сохранить пробелы в этом примере имени файла. Команда требует, чтобы ZIP-файл находился по указанному адресу; она не создаёт пример архива. Если ваш архив находится в другом месте или называется иначе, воспользуйтесь перетаскиванием, а не копируйте пример пути.
Apple указывает, что двойной щелчок по ZIP-файлу в Finder распаковывает его, а распакованный объект появляется рядом с архивом. Для просмотра содержимого выберите архив и перетащите его. Подробнее см. инструкции Apple по работе с ZIP-файлами.
Практика с временным архивом
Вы можете создать небольшой пример, используя только искусственный текст. Выберите имя папки, которое ещё не используется, чтобы упражнение не затронуло существующие файлы.
- В Finder перейдите на Рабочий стол и выберите
Файл > Новая папка. Назовите папкуArchive Inspection Demo. Если такое имя уже существует, выберите другое свободное имя и используйте его во всём упражнении. Создание папок описано в статье Apple «Упорядочивание файлов в папках на Mac». - В TextEdit создайте документ с текстом
Blue circle sample. ВыберитеФормат > Сделать простой текст, затемФайл > Сохранитьи сохраните документ в новой папке под именемshapes.txt. - Создайте ещё один документ в формате простого текста с содержимым
Green square sampleи сохраните его в этой папке под именемcolors.txt. Эти действия по созданию и преобразованию документов описаны в руководстве Apple по TextEdit. - Щёлкните папку в Finder, удерживая клавишу Control, и выберите
Сжать. Apple указывает, что при сжатии одной папки создаётся ZIP-файл с тем же именем. Прежде чем продолжить, убедитесь, что файл ZIP с таким именем ещё не существует; при необходимости выберите новое имя папки. Подробнее см. «Архивация и разархивация файлов и папок на Mac». - Просмотрите список файлов в получившемся ZIP-архиве, выполнив описанные выше действия в Терминале.
Найдите записи, соответствующие путям Archive Inspection Demo/shapes.txt и Archive Inspection Demo/colors.txt. Это ожидаемые пути для созданного примера, а не запись из проверенного сеанса работы на Mac. Порядок записей и наличие дополнительных записей могут различаться.
Исходная папка остаётся на месте, потому что вы создали её до сжатия. Её наличие не означает, что команда просмотра списка извлекла какие-либо файлы. Закончив, вы можете удалить папку примера и ZIP-файл в Finder.
Чтение списка и выбор нужных сведений
Список архива показывает, какие записи в нём хранятся. Он не открывает текст или изображение внутри каждой записи. Воспользуйтесь этой таблицей, чтобы выбрать минимальную подходящую проверку:
| Ваш вопрос | Команда или проверка | Как интерпретировать результат |
|---|---|---|
| Какие записи есть в ZIP-архиве и каков их размер? | unzip -l с последующим указанием пути к архиву |
Просмотрите сохранённые пути и несжатые размеры. |
| Можно ли увидеть только имена записей ZIP-архива? | unzip -Z1 с последующим указанием пути к архиву |
Будет выведено по одному имени записи в строке, без итоговой таблицы. |
| Есть ли файлы с похожими именами в разных папках? | Сравните полные пути записей | Drafts/shapes.txt и Final/shapes.txt — это разные пути. |
| Есть ли файл из списка уже на моём Рабочем столе? | Отдельно проверьте его предполагаемое расположение в Finder | Одна запись в архиве не подтверждает, что отдельный файл существует там. |
Чтобы получить более компактный список имён для созданного примера, выполните команду:
/usr/bin/unzip -Z1 "$HOME/Desktop/Archive Inspection Demo.zip"
Здесь -Z включает режим ZipInfo, а 1 запрашивает только имена файлов, по одному в строке. Имена папок, сохранённые в архиве, остаются частью отображаемых путей. Эти опции описаны в руководстве Apple к распространяемой версии zipinfo.
При сравнении записей сохраняйте полный путь. Два файла с именем shapes.txt могут находиться в разных папках архива. Список также не позволяет определить, что произойдёт, если позднее извлечь записи в папку, где уже есть файлы с совпадающими именами. В этом процессе такой вопрос о месте назначения не возникает, поскольку архивные файлы не записываются на диск, а только отображается их список.
Успешный вывод списка также не равнозначен полной проверке архива. В руководстве unzip описана отдельная операция -t, которая разворачивает записи в памяти и проверяет сохранённые контрольные суммы. Отображение имени записи не равнозначно проверке её содержимого. См. описание опций просмотра списка и проверки.
Просмотр TAR-архивов и сжатых TAR-файлов
Для TAR-архива используйте команду /usr/bin/tar -tf, указав после неё путь. В распространяемом Apple руководстве опция -t включает режим просмотра списка, а -f указывает файл архива. Эта же реализация автоматически распознаёт сжатие gzip при чтении, поэтому такой способ подходит и для TAR-архивов, сжатых gzip. См. руководство Apple к распространяемой версии tar.
Для существующего искусственного архива с именем Sample Bundle.tar.gz на Рабочем столе полная команда будет такой:
/usr/bin/tar -tf "$HOME/Desktop/Sample Bundle.tar.gz"
Это отдельный пример: описанное выше упражнение в Finder создаёт ZIP, а не этот TAR-файл. Выполняйте эту команду, только если такой файл уже существует. Или введите /usr/bin/tar -tf, поставьте пробел и перетащите в Терминал существующий временный TAR-архив.
Чтобы запросить более подробный список, добавьте v:
/usr/bin/tar -tvf "$HOME/Desktop/Sample Bundle.tar.gz"
В руководстве описан подробный формат вывода, похожий на длинный список содержимого папки. Оставьте в команде t: x выбирает извлечение файлов на диск. В том же руководстве объясняется, что при распаковке повторяющиеся имена в архиве могут перезаписать более ранние записи — ещё одна причина отличать просмотр списка от распаковки. См. режимы tar и подробный вывод.
Что могут делать команды Apple Shortcuts в этом процессе?
Shortcuts может получать выбранные элементы Finder и отображаться как действие Finder. Эта интеграция служит отправной точкой для автоматизации, но сама по себе не определяет операцию просмотра списка файлов в архиве. В инструкциях Apple по Finder и быстрым действиям описано, где запускаются команды быстрого доступа, а фактическое поведение при просмотре списка определяется приведёнными выше руководствами по командам.
Прежде чем адаптировать существующую команду быстрого доступа, проверьте её действия. В библиотеке действий редактора наведите указатель на действие и нажмите кнопку информации. Для действия, уже добавленного в команду, щёлкните его значок, удерживая клавишу Control, и выберите Показать информацию. Apple указывает, что в описании приводятся допустимые входные данные и получаемый результат. Подробнее см. «Навигация по списку действий в Shortcuts на Mac».
В этом процессе важно различать три вещи: выбранный архив — это файл, список — это текстовое описание записей, а имена записей не являются извлечёнными файлами. Действие, которое распаковывает архив и создаёт файлы, изменит ход работы. В цитируемых руководствах Apple не описан встроенный обозреватель содержимого архива, поэтому здесь для полного просмотра используется Терминал, а не предполагается наличие действия с такой возможностью.
Настройки входных данных тоже важны. Apple указывает, что команда быстрого доступа может ограничивать принимаемые типы содержимого и использовать действие Stop and Respond, если входные данные не получены. В процессе из Finder следует принимать файлы, а при отсутствии входных данных команда должна чётко остановиться, а не передавать дальше пустое значение. Эти настройки описаны в статье «Ограничение входных данных для команды быстрого доступа, запущенной из другого приложения на Mac».
Если список архива выводится неправильно
Ориентируйтесь на результат, чтобы выбрать следующий шаг, а не меняйте опции снова и снова:
- Архив не найден: убедитесь, что файл по-прежнему существует в Finder, затем соберите команду заново, перетащив именно этот файл. Проверьте пример имени, если Finder создал ZIP с другим именем.
- В выводе сообщается об ошибке формата или чтения: проверка завершилась неудачно. Убедитесь, что выбрали нужный архив. Изменение расширения имени файла не подтверждает, что его содержимое соответствует указанному формату.
- Перед ошибкой появились некоторые имена: считайте результат неполным. Не делайте вывод, что видимые записи составляют весь архив.
- Одна из записей — другой архив: внешний список указывает вложенный архив как запись. Он не показывает содержимое самого вложенного архива.
Самый короткий полный способ проверить обычный ZIP — ввести /usr/bin/unzip -l, поставить пробел, перетащить архив и нажать Return. Прочитайте полные пути записей и все заключительные сообщения. Когда вы получите нужные имена файлов или структуру, проверка завершена — архивные файлы останутся нераспакованными.
Источники
- Архивация и разархивация файлов и папок на Mac — Apple Support.
- Перетаскивание объектов в окно Терминала на Mac — Apple Support.
- Упорядочивание файлов в папках на Mac — Apple Support.
- Создание, открытие и преобразование документов в TextEdit на Mac — Apple Support.
- Руководство UNZIP(1L) — Info-ZIP; распространяется Apple Open Source.
- Руководство ZIPINFO(1L) — Info-ZIP; распространяется Apple Open Source.
- Руководство TAR(1) — libarchive; распространяется Apple Open Source.
- Запуск команды быстрого доступа во время работы на Mac — Apple Support.
- Навигация по списку действий в Shortcuts на Mac — Apple Support.
- Ограничение входных данных для команды быстрого доступа, запущенной из другого приложения на Mac — Apple Support.