| ZCAT(1) | دستورهای کاربری | ZCAT(1) |
نام (NAME)
zcat - بازگشایی و نمایش محتوای فایلهای فشرده gzip بر روی خروجی استاندارد
خلاصه دستور (SYNOPSIS)
zcat [ گزینهها ] [ فایل... ]
توضیحات (DESCRIPTION)
دستور zcat محتوای فایلهای فشردهشده با gzip را از حالت فشرده خارج کرده و بدون تغییر فایل اصلی، در خروجی استاندارد نمایش میدهد (معادل gzip -dc).
دستور zcat کاملاً معادل با gunzip -c (یا gzip -dc) است. (در برخی سیستمها، zcat ممکن است به صورت gzcat نصب شده باشد تا پیوند اصلی به compress حفظ گردد.) دستور zcat فهرستی از فایلها را در خط فرمان یا ورودی استاندارد دریافت کرده، آنها را از حالت فشرده خارج ساخته و دادههای حاصل را در خروجی استاندارد مینویسد.
اگر هیچ فایلی مشخص نشود، یا اگر نام فایل برابر با "-" باشد، دادهها از ورودی استاندارد خوانده میشوند. zcat فایلهایی را که دارای عدد جادویی (magic number) معتبر باشند، چه دارای پسوند .gz باشند یا نباشند، بازگشایی میکند.
دستور zcat میتواند فایلهای فشرده ایجادشده توسط gzip، zip، compress، compress -H یا pack را از حالت فشرده خارج کند. تشخیص قالب ورودی بهصورت خودکار انجام میشود. برای قالبهای gzip و zip، اعتبارسنجی با یک CRC ۳۲ بیتی انجام میگیرد. برای pack اندازه فایل بازشده بررسی میشود. قالب استاندارد compress فاقد بررسی یکپارچگی است، با این حال zcat گاهی میتواند یک فایل .Z آسیبدیده را شناسایی کند. اگر هنگام بازگشایی فایل .Z خطایی رخ دهد، نباید فرض کرد فایل سالم است فقط به این دلیل که uncompress خطایی گزارش نمیکند؛ چرا که دستور استاندارد uncompress ورودی را اعتبارسنجی نکرده و خروجی بیاستفاده تولید میکند. قالب SCO compress -H (روش فشردهسازی lzh) بدون CRC است اما امکان بررسیهای اولیهای را فراهم میکند.
فایلهای ایجادشده توسط zip تنها در صورتی توسط zcat قابل استخراج هستند که شامل یک عضو فشردهشده با روش 'deflation' باشند. این قابلیت تنها برای آسانتر کردن تبدیل فایلهای tar.zip به tar.gz در نظر گرفته شده است. برای استخراج فایلهای zip چندعضوی، از دستور unzip بهجای zcat استفاده کنید.
گزینهها (OPTIONS)
- -c, --stdout, --to-stdout
- نوشتن خروجی روی خروجی استاندارد؛ بدون تغییر ماندن فایلهای ورودی (این رفتار پیشفرض zcat است).
- -d, --decompress, --uncompress
- خارج کردن از حالت فشرده (این رفتار پیشفرض zcat است).
- -f, --force
- اجبار به بازگشایی دادهها؛ خواندن دادههای فشرده حتی اگر از یک ترمینال خوانده شوند یا به یک ترمینال ارسال گردند. اگر قالب دادههای ورودی توسط gzip شناسایی نشود، ورودی بدون هیچ تغییری مستقیماً در خروجی استاندارد بازنویسی میشود؛ یعنی zcat مانند دستور cat رفتار میکند.
- -h, --help
- نمایش پیام راهنما و خروج.
- -l, --list
- فهرست کردن اطلاعات محتوای فایلهای فشردهشده:
اندازه فشرده (compressed size) اندازه بازشده (uncompressed size) نسبت فشردهسازی (ratio) نام اصلی فایل (uncompressed_name)
برای فایلهایی که در قالب gzip نیستند (مانند فایلهای فشرده .Z)، اندازه غیرفشرده مقدار -1 نمایش داده میشود. همراه با گزینه --verbose، فیلدهای بیشتری مانند روش فشردهسازی، CRC ۳۲ بیتی و تاریخ و زمان فایل نمایش داده میشوند.
- -L, --license
- نمایش شرایط مجوز و کپیرایت برنامه و سپس خروج.
- -q, --quiet
- عدم نمایش تمام پیامهای هشدار.
- -r, --recursive
- پیمایش بازگشتی در پوشهها؛ اگر نام مسیر مشخصشده یک پوشه باشد، zcat وارد پوشه شده و تمام فایلهای فشرده درون آن را استخراج و در خروجی استاندارد نمایش میدهد.
- -S .suf, --suffix .suf
- استفاده از پسوند .suf به جای پسوند پیشفرض .gz. هنگام بازگشایی، پسوند تعیینشده به ابتدای فهرست پسوندهای آزمایشی افزوده میشود.
- --synchronous
- استفاده از خروجی همگام (synchronous). با این گزینه، در صورت سقوط یا خاموش شدن ناگهانی سیستم احتمال از بین رفتن دادهها کمتر است، اما ممکن است به مقدار چشمگیری کندتر عمل کند.
- -t, --test
- آزمون؛ بررسی یکپارچگی و سلامت فایلهای فشردهشده بدون نوشتن محتوا در خروجی استاندارد و سپس خروج.
- -v, --verbose
- حالت پرحرف (همراه با جزئیات کامل)؛ نمایش نام فایل و درصد کاهش حجم برای هر فایل فشرده.
- -V, --version
- نمایش شماره نسخه برنامه و گزینههای زمان ساخت و سپس خروج.
کاربرد پیشرفته (ADVANCED USAGE)
چندین فایل فشرده را میتوان با یکدیگر ادغام (concatenate) کرد. در این وضعیت، zcat تمام اعضا را به صورت متوالی بازگشایی میکند. برای نمونه:
gzip -c file1 > foo.gz gzip -c file2 >> foo.gz
سپس دستور زیر:
zcat foo.gz
معادل خواهد بود با:
cat file1 file2
در صورت خرابی یکی از بخشهای فایل .gz، بقیه بخشها در صورت حذف بخش آسیبدیده همچنان قابل بازیابی هستند.
اگر یک فایل فشرده از چندین عضو تشکیل شده باشد، اندازه غیرفشرده و CRC گزارششده توسط گزینهٔ --list تنها به آخرین عضو مربوط میشود. برای به دست آوردن اندازه کل اعضا در حالت بازشده میتوانید از دستور زیر استفاده کنید:
zcat file.gz | wc -c
متغیرهای محیطی (ENVIRONMENT)
متغیر محیطی قدیمی GZIP میتواند مجموعهای از گزینههای پیشفرض را برای zcat نگهداری کند. این گزینهها پیش از گزینههای خط فرمان اعمال میشوند اما با گزینههای صریح خط فرمان قابل بازنویسی هستند. این متغیر منسوخ شده و استفاده از آن توصیه نمیشود.
پیامهای تشخیصی (DIAGNOSTICS)
وضعیت خروج در شرایط عادی ۰ است؛ در صورت بروز خطا مقدار ۱ و در صورت صدور هشدار مقدار ۲ بازگردانده میشود.
- Usage: zcat [-fhLV] [file ...]
- گزینههای نامعتبر در خط فرمان مشخص شدهاند.
- file: not in gzip format
- فایل ارائهشده در قالب gzip یا قالبهای پشتیبانیشده فشرده نشده است.
- file: Corrupt input. Use zcat to recover some data.
- فایل ورودی فشرده آسیب دیده است. دادهها تا نقطه بروز خطا را میتوان با دستور زیر بازیابی کرد:
zcat file > recover
- file: compressed with xx bits, can only handle yy bits
- فایل با تعداد بیت بیشتری نسبت به ظرفیت پردازش الگوریتم بازگشایی روی این سامانه فشرده شده است.
- gunzip: corrupt input
- خطای نقض حافظه (SIGSEGV) شناسایی شد که بیانگر خراب بودن فایل فشرده ورودی است.
هشدارها (CAVEATS)
هنگام نوشتن دادههای فشرده روی نوارهای مغناطیسی، معمولاً خروجی با صفر تا مرز بلوکها پر (pad) میشود. هنگام بازگشایی توسط zcat، این برنامه دادههای هرز انتهای بلوک را تشخیص داده و هشدار صادر میکند. میتوان با گزینه --quiet از نمایش این هشدار جلوگیری کرد.
اشکالات (BUGS)
در مواردی نادر روی فایلهایی با تکرار بسیار بالا، الگوریتم compress فشردهسازی بهتری نسبت به gzip ارائه میدهد.
همچنین ببینید (SEE ALSO)
cat(1), gzip(1), gunzip(1), zless(1), zmore(1), zdiff(1), zcmp(1), zgrep(1), gzexe(1), zip(1), unzip(1), compress(1)
مشخصات
قالب فایل
gzip در سند
اینترنتی RFC 1952
تعریف شده
است:
https://www.ietf.org/rfc/rfc1952.txt
مشخصات
الگوریتم
فشردهسازی
DEFLATE در سند
اینترنتی RFC 1951
تعریف شده
است:
https://www.ietf.org/rfc/rfc1951.txt
گزارش باگها (REPORTING BUGS)
گزارش
اشکالات به:
bug-gzip@gnu.org
صفحه خانگی GNU
gzip: https://www.gnu.org/software/gzip
راهنمای
عمومی
استفاده از
نرمافزارهای
گنو: https://www.gnu.org/gethelp
حق نشر (COPYRIGHT)
Copyright © 1998–1999, 2001–2002, 2012,
2015–2023 Free Software Foundation, Inc.
Copyright © 1992, 1993 Jean-loup Gailly
مجوز ساخت و توزیع نسخههای عین متن این راهنما اعطا شده است، مشروط بر اینکه اطلاعیه حق نشر و این اطلاعیه مجوز در تمامی نسخهها حفظ شوند.
مجوز کپی و توزیع نسخههای تغییریافته این راهنما تحت شرایط نسخهبرداری عین متن اعطا میشود، مشروط بر اینکه کل اثر اشتقاقی حاصل تحت شرایط اطلاعیه مجوزی یکسان با این اطلاعیه توزیع گردد.
| مه ۲۰۲۵ | gzip |