@ লেকেনস্টেইন জবাব ছাড়াও, আমি যুক্ত করতে চাই যে এই আচরণটি একটি কাজ করে এবং এটি ভালভাবে দর্শনের উপর ভিত্তি করে রয়েছে - tar
প্রোগ্রামটি একাধিক ফাইলকে কীভাবে একটি স্ট্রিমে ( .tar
এক্সটেনশন সহ) রাখতে হয় তা gzip
জানে, কীভাবে সংকোচন করতে হয় একক ফাইল ( .gz
এক্সটেনশন যুক্ত করা) *। এই সরঞ্জামগুলিকে একত্রিত করে আপনি একটি কমান্ড তৈরি করতে পারেন যা একাধিক ফাইলকে একক .tag.gz
ফাইলকে সংকুচিত করে ।
এই পদ্ধতিরটি খুব নমনীয় - আপনি সমস্ত ধরণের কাজ করতে কয়েকটি মানক ইউনিক্স কমান্ড একত্রিত করতে পারেন। উদাহরণস্বরূপ, আপনি যদি ফাইলগুলি সংকুচিত করার জন্য আরও ভাল প্রোগ্রাম লিখে থাকেন তবে আপনাকে ফাইলগুলি tar
তৈরি করতে সক্ষম করার জন্য এটি সংশোধন করার দরকার নেই .tar.mymegazip
- পরিবর্তে, আপনি কেবল tar
আপনার সংকোচকে পাইপের আউটপুট।
একইভাবে, tar
এসএসএইচ সম্পর্কে কিছুই জানে না, তবে কমান্ডগুলির সংমিশ্রণের মাধ্যমে আপনি একটি স্ক্রিপ্ট তৈরি করতে পারেন যা ফাইলগুলি সংরক্ষণাগারভুক্ত করে, এসএসএইচের মাধ্যমে একটি রিমোট মেশিনে আপলোড করে এবং সেখানে সংরক্ষণাগারটি সংরক্ষণ করে না un
zip
কমান্ডের সাথে এটি তুলনা করুন , যা ইউনিক্স থেকে উদ্ভূত হয়নি - এতে সম্পূর্ণ ডিরেক্টরিকে সংকোচনের জন্য ফাইলগুলি এনক্রিপ্ট করা, সংরক্ষণাগারটিকে ছোট ছোট জিপফাইলে বিভক্ত করার জন্য অন্তর্নির্মিত সরঞ্জাম রয়েছে etc.
(পাদটীকা) - হ্যাঁ, tar
ফাইলগুলি ব্যবহার করে -z
এবং -j
স্যুইচগুলি নিজেই জিজেপ বা বিজিপ করতে সক্ষম , সেগুলি সুবিধার্থে যুক্ত করা হয়েছিল এবং জিএনইউ টারটি প্রকৃতপক্ষে প্রসারণ gzip
বা bzip2
একটি নতুন প্রক্রিয়া হিসাবে রয়েছে।
tar c dir/ | gzip > dir.tar.gz
এবংtar czf dir.tar.gz dir/
আদেশগুলি একই কাজ করে। একটি উদাহরণ যেখানেtar
, SSH এবং সঙ্গে মিলিত হয়tar
(আবার):tar cz Documents/ | ssh user@host 'tar xz
(rsync সমতুল্য হবে:rsync -a Documents user@host:
)