এটি অদ্ভুত যে অন্য কেউ উল্লেখ করেনি যে 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
কমান্ড ব্যর্থ হবে। আমি যখন পরিষ্কার-পরিচ্ছন্নতা করতে গিয়েছিলাম কেবল তখনই আমি এটি পুনরায় স্মরণ করেছি - উদ্ধৃত সূত্রটি আমার কাছে স্বয়ংক্রিয়ভাবে (মূলত বহু বছর ধরে বহু পুনরাবৃত্তির কারণে)। ]