এটি অদ্ভুত যে অন্য কেউ উল্লেখ করেনি যে GNU- র আধুনিক সংস্করণগুলি tarআপনাকে বান্ডিল করার সময় সংকোচনের অনুমতি দেয়:
tar -czf output.tar.gz directory1 ...
tar -cjf output.tar.bz2 directory2 ...
আপনি ' -c' (স্টাডাউট থেকে, বা স্ট্ডিন থেকে) এবং ' -d' (ডিকম্প্রেস) বিকল্পগুলি সমর্থন করে তবে আপনি নিজের পছন্দগুলির সংকোচকারীও ব্যবহার করতে পারেন :
tar -cf output.tar.xxx --use-compress-program=xxx directory1 ...
এটি আপনাকে কোনও বিকল্প সংকোচকারী নির্দিষ্ট করার অনুমতি দেবে।
[ যুক্ত : আপনি যদি ফাইলগুলি থেকে সংক্ষেপণ gzipবা bzip2সংক্রামিত হন তবে জিএনইউ tarএগুলি স্বতঃ-সনাক্ত করে এবং উপযুক্ত প্রোগ্রামটি চালায়। এটি, আপনি ব্যবহার করতে পারেন:
tar -xf output.tar.gz
tar -xf output.tgz # A synonym for the .tar.gz extension
tar -xf output.tar.bz2
এবং এগুলি সঠিকভাবে পরিচালনা করা হবে। আপনি যদি একটি অ-মানক সংকোচকারী ব্যবহার করেন, তবে আপনাকে যখন এক্সট্রাকশন করবেন তখন আপনাকে তা উল্লেখ করতে হবে]]
পৃথক হওয়ার কারণটি যেমন নির্বাচিত উত্তরে দায়িত্ব পৃথক করা হয়। অন্যান্য জিনিসের মধ্যে, এর অর্থ হল যে লোকেরা cpioফাইলগুলির প্যাকেজিংয়ের জন্য ' ' প্রোগ্রামটি ব্যবহার করতে পারে (পরিবর্তে tar) এবং তারপরে পছন্দের সংকোচকারী ব্যবহার করতে পারে (একসময় পছন্দের সংকোচকারী ছিল pack, পরে এটি ছিল compress(যা তার চেয়ে অনেক বেশি কার্যকর ছিল pack), এবং তারপরে gzipযা পূর্বসূরীদের উভয়ের চারদিকে zipবাজে , এবং এটি সম্পূর্ণরূপে প্রতিযোগিতামূলক (যা ইউনিক্সে পোর্ট করা হয়েছে, তবে সেখানকার স্থানীয় নয়) এবং এখন bzip2যা আমার অভিজ্ঞতা অনুসারে সাধারণত একটি 10-20% সুবিধা অর্জন করে gzip।
[ যুক্ত : কেউ তাদের উত্তরে উল্লেখ cpioকরেছে যে মজাদার কনভেনশন রয়েছে। এটি সত্য, তবে যতক্ষণ না জিএনইউ tarপ্রাসঙ্গিক বিকল্পগুলি (' -T -') cpioপেত , তখন আরও ভাল কমান্ড ছিল যখন আপনি কোনও প্রদত্ত ডিরেক্টরি নীচে থাকা সমস্ত সংরক্ষণাগার সংরক্ষণ করতে চান না - আপনি প্রকৃতপক্ষে কোন ফাইলগুলি সংরক্ষণাগারভুক্ত করা হয়েছে তা চয়ন করতে পারেন। এর downside হয় cpioআপনি শুধু তাই নয় ছিল পারে ফাইল চয়ন করুন - আপনি ছিল তাদের পছন্দ করে নিন। এখনও একটি জায়গা যেখানে cpioস্কোর; এটি কোনও মধ্যবর্তী স্টোরেজ ছাড়াই একটি ডিরেক্টরি শ্রেণিবদ্ধ থেকে অন্য ডিরেক্টরিতে অন-সিটি অনুলিপি করতে পারে:
cd /old/location; find . -depth -print | cpio -pvdumB /new/place
ঘটনাচক্রে, '' -depth'অপশনটি findএই প্রসঙ্গে গুরুত্বপূর্ণ - এটি ডিরেক্টরিতে নিজের অনুমতি নির্ধারণের আগে ডিরেক্টরিগুলির বিষয়বস্তু অনুলিপি করে। এই উত্তরটি যুক্ত করার আগে আমি যখন আদেশটি পরীক্ষা করেছিলাম, তখন আমি কিছু পঠনযোগ্য ডিরেক্টরি (555 অনুমতি) অনুলিপি করেছিলাম; যখন আমি অনুলিপি মুছতে গিয়েছিলাম, ' rm -fr /new/place' শেষ করার আগে আমাকে ডিরেক্টরিগুলির অনুমতিগুলি শিথিল করতে হয়েছিল । ছাড়া -depthবিকল্প, cpioকমান্ড ব্যর্থ হবে। আমি যখন পরিষ্কার-পরিচ্ছন্নতা করতে গিয়েছিলাম কেবল তখনই আমি এটি পুনরায় স্মরণ করেছি - উদ্ধৃত সূত্রটি আমার কাছে স্বয়ংক্রিয়ভাবে (মূলত বহু বছর ধরে বহু পুনরাবৃত্তির কারণে)। ]