Команды Linux · 2 min read · Sep 20, 2025
Учебник по команде zcat в Linux для начинающих (5 примеров)

Хотя сжатие в целом полезно, так как позволяет экономить место на вашей системе, пользователям командной строки необходимо разжать файл для выполнения нескольких небольших задач, таких как просмотр содержимого файла. Однако существует утилита командной строки - названная zcat - которая позволяет вам заглянуть внутрь сжатых файлов без дополнительных усилий.
В этом учебнике мы обсудим основы zcat, используя несколько простых для понимания примеров. Обратите внимание, что все примеры в этой статье были протестированы на Ubuntu 16.04 LTS.
Команда zcat в Linux
Команда zcat позволяет вам просматривать содержимое сжатого файла. Вот ее синтаксис:
zcat FILE ....А вот как страница man инструмента объясняет это:
zcat is identical to gunzip -c. (On some systems, zcat may be
installed as gzcat to preserve the original link to compress.) zcat
uncompresses either a list of files on the command line or its standard
input and writes the uncompressed data on standard output.Следующие примеры в формате вопросов и ответов должны дать вам хорошее представление о том, как работает команда zcat.
Вопрос 1. Как использовать zcat?
Предположим, у вас есть сжатый текстовый файл, скажем, test2.txt.gz. Если вы попытаетесь просмотреть его содержимое с помощью стандартной команды cat, вы увидите искаженный вывод:
Таким образом, в этом случае вы можете использовать команду zcat. Основное использование очень простое - просто замените cat на zcat.
zcat test2.txt.gz
Таким образом, вы можете увидеть, что содержимое сжатого файла было отображено на стандартном выводе.
Вопрос 2. Работает ли zcat с несколькими входными данными?
Да, работает. Все, что вам нужно сделать, это передать имена сжатых файлов в качестве входных данных.
Например:
zcat test.txt.gz test2.txt.gzВот упомянутая команда в действии:
Вопрос 3. Распознает ли zcat сжатый файл по расширению?
Нет. Это не так. Вот что говорит страница man об этом:
zcat will uncompress files that have the correct magic number whether they have a .gz suffix or not.Чтобы проверить это, мы убрали расширение .gz с одного из сжатых файлов и попытались запустить zcat на нем.
Таким образом, вы можете видеть, что инструмент все еще смог определить, что это сжатый файл, и смог отобразить его содержимое на STDOUT.
Вопрос 4. Как обрабатывать постраничный вывод при использовании zcat?
Есть два способа сделать это. Либо вы можете использовать стандартные команды more и less.
zcat [FILENAME] | morezcat [FILENAME] | lessИли используйте команды zmore и zless.
zmore [FILENAME]zless [FILENAME]Вопрос 5. Работает ли zcat с несжатыми файлами?
По умолчанию нет. Если вы попытаетесь запустить команду zcat с несжатым файлом в качестве входных данных, вы увидите ошибку, подобную следующей.
Однако, если вы хотите заставить zcat отображать содержимое файла в выводе независимо от того, сжат файл или нет, используйте опцию командной строки -f. Следующий скриншот показывает эту опцию в действии:
Таким образом, вы можете видеть, что инструмент не выдал никаких ошибок на этот раз.
Заключение
Несомненно, команда zcat экономит ваше время, если все, что вы хотите, это взглянуть на содержимое сжатого файла. Поэтому, независимо от того, какой вы пользователь командной строки Linux (новичок или профессионал), вам следует узнать об этой команде. Мы уже обсудили некоторые полезные детали, связанные с zcat, здесь. Для получения дополнительной информации перейдите на его страницу man.
Get new posts in your inbox
No spam. Unsubscribe anytime.