مواد پر جائیں

TAR یا TAR.GZ بنائیں

وہ آرکائیو فارمیٹ بنائیں جس کی Linux اور macOS توقع کرتے ہیں، ٹرمینل کھولے بغیر۔ کسی بھی مرحلے پر کچھ بھی محفوظ نہیں کیا جاتا۔

  • کبھی محفوظ نہیں کی جاتی
  • نہ قطار، نہ انتظار
  • نہ سائن اپ، نہ واٹر مارک

یہ کیسے کام کرتا ہے

1

اپنی فائلیں شامل کریں

جتنی چاہیں، فولڈرز سمیت۔

2

TAR یا TAR.GZ چنیں

سادہ TAR فائلوں کو کمپریس کیے بغیر اکٹھا کرتا ہے۔ TAR.GZ پورے بنڈل کو کمپریس کرتا ہے، اور عام طور پر آپ کو یہی چاہیے ہوتا ہے۔

3

ڈاؤن لوڈ کریں

بن کر سیدھا آپ کے ڈاؤن لوڈز میں محفوظ ہو جاتا ہے۔

سائز میں TAR، ZIP سے کیوں آگے ہے اور سہولت میں پیچھے

TAR کمپریس نہیں کرتا۔ یہ فائلوں کو جوڑ کر ایک اسٹریم بناتا ہے، ہر فائل سے پہلے 512 بائٹ کا ایک ہیڈر ہوتا ہے جس میں اس کا نام، سائز، اجازتیں، ملکیت اور وقت درج ہوتا ہے، اور کمپریشن ایک الگ تہہ ہے جو پورے نتیجے کے گرد لپٹی ہوتی ہے۔ یہی تہہ در تہہ ساخت اصل وجہ ہے کہ .tar.gz انہی فائلوں کی ZIP سے چھوٹا ہوتا ہے: gzip ایک مسلسل اسٹریم دیکھتا ہے اور فائلوں کے درمیان دہرائے گئے حصوں کا فائدہ اٹھا سکتا ہے، جبکہ ZIP ہر فائل کو الگ کمپریس کرتی ہے اور ایسا نہیں کر سکتی۔ ملتی جلتی دستاویزات یا سورس کوڈ کے فولڈر میں یہ فرق اکثر بڑا ہوتا ہے۔

اس کی قیمت دوسرے سرے پر ادا ہوتی ہے۔ چونکہ کمپریشن سب کچھ لپیٹ لیتا ہے، اس لیے .tar.gz میں کوئی فہرست نہیں ہوتی — اس کا مواد دیکھنے کے لیے شروع سے ڈی کمپریس کرنا پڑتا ہے، اور آخری فائل نکالنے کے لیے پورا۔ ZIP کسی بھی سائز کی ہو، اس کی فہرست فوراً آ جاتی ہے۔ کون سا فارمیٹ بہتر ہے، اس کا دارومدار پوری طرح اس پر ہے کہ آرکائیو پورا کا پورا کھولا جائے گا یا نہیں، اور بیک اپ یا سورس ریلیز ہمیشہ پورا ہی کھولا جاتا ہے۔

پہلے سے کمپریسڈ فائلیں سارا حساب بدل دیتی ہیں۔ JPEG، MP4 یا PDF فائلوں کے TAR کو gzip والے مرحلے سے تقریباً کچھ حاصل نہیں ہوتا، کیونکہ اس مواد سے دہرائے گئے حصے پہلے ہی نکالے جا چکے ہیں — آرکائیو بنیادی طور پر اپنی فائلوں کا مجموعہ ہی ہوتا ہے۔ وہاں بھی TAR اسی وجہ سے کام کا ہے جس وجہ سے ZIP، یعنی کئی کے بجائے ایک فائل بھیجنا، بس سائز کے لیے نہیں۔

اجازتیں آپ کی فائلوں سے پڑھنے کے بجائے مناسب ڈیفالٹ کے طور پر لکھی جاتی ہیں، اور یہی ایمانداری سے بتائی جانے والی حد ہے۔ صفحے کو آپ کی ڈسک پر موجود mode bits، ملکیت یا symbolic links تک رسائی نہیں ہوتی — اسے فائلوں کا مواد اور نام ملتے ہیں، اور کچھ نہیں۔ اس لیے ایگزیکیوٹیبل اسکرپٹ آرکائیو میں غیر ایگزیکیوٹیبل ہو کر پہنچتی ہے، اور symbolic link کو لنک کے طور پر درج نہیں کیا جا سکتا۔ دستاویزات کے .tar.gz کے لیے یہ غیر اہم ہے؛ لیکن کسی ایسی چیز کو پیک کرنے کے لیے جو کھول کر چلائی جائے گی، یہی تو اس فارمیٹ کا اصل مقصد ہے، اور وہی یہاں موجود نہیں۔

جب آپ کو کچھ اور چاہیے

جہاں بھی میٹا ڈیٹا اہم ہو — بیک اپ، سورس ریلیز، کسی ڈائریکٹری ٹری کو ایک مشین سے دوسری پر لے جانا — وہاں tar -czf archive.tar.gz folder/ ہی صحیح ٹول ہے، اور یہ ہر Mac اور Linux مشین پر پہلے سے انسٹال ہے، اور Windows پر 2018 سے۔ یہ اصل اجازتیں، ملکیت، symbolic links اور وقت درج کرتا ہے، سائز کی کسی حد کے بغیر سیدھا ڈسک پر لکھتا ہے، اور ٹاربال میں وہی کچھ ہوتا ہے جس کی ہر وصول کنندہ توقع کرتا ہے۔

اس سے بھی چھوٹی فائل کے لیے کنٹینر کے بجائے کمپریشن بدلیں: tar -cJf archive.tar.xz folder/ xz استعمال کرتا ہے اور وقت زیادہ لے کر عموماً gzip سے کافی چھوٹی فائل بناتا ہے، جبکہ --zstd تقریباً اتنی ہی چھوٹی اور کہیں زیادہ تیز ہے۔ دونوں آج کے ہر Unix سسٹم پر پڑھے جاتے ہیں۔ اور اگر وصول کنندہ Windows استعمال کرتا ہو اور تکنیکی نہ ہو، تو سادہ ZIP ہی خیال رکھنے والا انتخاب ہے۔

اکثر پوچھے جانے والے سوالات

مجھے TAR چننا چاہیے یا TAR.GZ؟

تقریباً ہمیشہ TAR.GZ — سادہ TAR بالکل کمپریس نہیں کرتا، اس لیے آرکائیو کا سائز اس میں موجود ہر چیز کے کل سائز جتنا ہوتا ہے۔ سادہ TAR تب کام آتا ہے جب مواد پہلے سے کمپریسڈ ہو، یا جب آگے کوئی اور چیز خود کمپریس کرنے کی توقع رکھتی ہو۔

کیا Linux اس کے بنائے ہوئے آرکائیو قبول کرے گا؟

جی ہاں، اور یہ مفروضہ نہیں بلکہ جانچا ہوا ہے: ہر بِلڈ میں چیک کیا جاتا ہے کہ GNU tar خود اس صفحے کا بنایا ہوا آرکائیو فہرست میں دکھائے اور بائٹ بہ بائٹ درست نکالے۔ لمبے فائل نام POSIX pax ہیڈرز کے طور پر لکھے جاتے ہیں، جو معیاری توسیع ہے اور جسے Windows پر bsdtar اور 7-Zip بغیر کسی شکایت کے پڑھتے ہیں۔

کیا میری فائلیں کہیں محفوظ کی جاتی ہیں؟

نہیں۔ آرکائیو بن کر سیدھا آپ کے ڈاؤن لوڈز میں محفوظ ہوتا ہے، اور بعد میں کچھ بھی رکھا نہیں جاتا۔ یہاں یہ بات اہم ہے: لوگ جو چیزیں سب سے زیادہ zip کرتے ہیں — دستاویزات، تصاویر، کام کا کوئی فولڈر — بالکل وہی ہیں جو پہلے کسی اجنبی کے سرور کے حوالے نہیں کرنی چاہییں۔

میں ZIP کے بجائے اسے کیوں استعمال کروں؟

زیادہ تر اس لیے کہ کسی اور نے یہی مانگا ہے — کوئی سرور، کوئی ڈیپلائمنٹ اسکرپٹ، Linux استعمال کرنے والا کوئی ساتھی۔ اس کا ایک حقیقی تکنیکی فائدہ بھی ہے: چونکہ TAR.GZ ہر فائل کو الگ کرنے کے بجائے پورے بنڈل کو ایک اسٹریم کی طرح کمپریس کرتا ہے، اس لیے جب آپ کے پاس بہت سی چھوٹی ملتی جلتی فائلیں ہوں، جیسے سورس کوڈ یا لاگز، تو یہ اکثر ZIP سے واضح طور پر چھوٹا ہوتا ہے۔ Windows استعمال کرنے والے کسی ایک شخص کو ایک آرکائیو بھیجنے کے لیے ZIP زیادہ آسان انتخاب ہے۔

کیا سائز کی کوئی حد ہے؟

کوئی مقررہ حد نہیں، بلکہ دستیاب میموری ہی حد ہے۔ عام کمپیوٹر پر سیکڑوں فائلیں اور کئی گیگا بائٹ آسانی سے چل جاتی ہیں؛ فون اس سے کم سنبھال پائے گا۔

جاننا مفید ہے: TAR میں اپنا کوئی کمپریشن نہیں ہوتا، اس لیے سائز میں کمی gzip والے مرحلے سے آتی ہے — پہلے سے کمپریسڈ فائلیں (JPEG، MP4، PDF) بمشکل سکڑیں گی۔ فائل کی اجازتیں مناسب ڈیفالٹ کے طور پر لکھی جاتی ہیں، کیونکہ براؤزر آپ کی ڈسک سے اصل اجازتیں نہیں پڑھ سکتا۔

یہ ٹول اپنی ویب سائٹ پر لگائیں

کسی بھی بلاگ، کلاس پیج یا ہیلپ آرٹیکل کے لیے مفت۔ ایک اسنیپٹ پیسٹ کریں اور آپ کے وزیٹرز اسے سیدھا آپ کے صفحے پر استعمال کر سکیں گے۔