উত্তর:
এর -Jজন্য সংকোচন বিকল্পটি ব্যবহার করুন xz। এবং মনে রাখবেন man tar:)
tar cfJ <archive.tar.xz> <files>
2015-08-10 সম্পাদনা করুন:
যদি আপনি tar ড্যাশগুলি দিয়ে যুক্তিগুলি পাস করেন (যেমন: এর tar -cfবিপরীতে tar cf), তবে -fবিকল্পটি অবশ্যই শেষ অবধি আসবে , যেহেতু এটি ফাইলের নামটি নির্দিষ্ট করে (এটি নির্দেশ করার জন্য @ ABB কে ধন্যবাদ !)! সেক্ষেত্রে কমান্ডটি দেখতে পাওয়া যায়:
tar -cJf <archive.tar.xz> <files>
fড্যাশ ছাড়াই শেষ রাখা উচিত put
tarম্যাকোজে অন সমর্থন করে বলে মনে হচ্ছে -Jতবে ম্যান পৃষ্ঠাতে বৈশিষ্ট্যটি দেওয়া হয়নি। এখানে এটি তাকান ছিল। যদিও তারা --options...
স্যুইচ -Jশুধুমাত্র নতুন সিস্টেমে কাজ করে। সর্বজনীন আদেশ হ'ল:
.Tar.xz সংরক্ষণাগার তৈরি করতে
tar cf - directory/ | xz -z - > directory.tar.xz
ব্যাখ্যা
tar cf - directoryডিরেক্টরি পড়ে / এবং এটি টিআর ফরমেটে লাগানো শুরু করে। এই অপারেশনের আউটপুট স্ট্যান্ডার্ড আউটপুটে উত্পন্ন হয়।
| অন্য প্রোগ্রামের ইনপুটটিতে পাইপগুলি স্ট্যান্ডার্ড আউটপুট ...
... যা হতে পারে xz -z -। এক্সজেড -zস্ট্যান্ডার্ড ইনপুট থেকে সংরক্ষণাগারটি সঙ্কুচিত করতে ( ) কনফিগার করা হয়েছে- ) ।
আপনি এর থেকে আউটপুট পুনর্নির্দেশ xzকরতে tar.xzফাইল।
-fপাস করার সময় "ফাইল থেকে" বোঝায় না xz। এর পরিবর্তে এটি জন্য ছোট --force(দেখুন ভাবে XZ লস (1) বিস্তারিত জানার জন্য), এবং শ্রেষ্ঠ, যদি না প্রয়োজন ব্যবহার করা হয় না।
tar cf - directory/ | xz -z -T0 - > directory.tar.xz
-1 -T0বা -0 -T0অপশন হিসাবে খুব বেশি যত্নশীল না হন যা সাধারণত আপনাকে তুলনীয় বা দ্রুত সময়ে জিজিপের চেয়ে একটি ছোট ফাইল দেয়, যখন ডিফল্টটি -6যথেষ্ট ধীর হয় while gzip চেয়ে।
আপনি যদি পাইপ মোডটি পছন্দ করেন তবে এটি সবচেয়ে পরিষ্কার সমাধান:
tar c some-dir | xz > some-dir.tar.xz
fফাইলগুলির সাথে ডিল করার জন্য এবং তারপরে -ফাইলটি স্ট্যান্ডার্ড ইনপুট কিনা তা নির্দিষ্ট করার জন্য বিকল্পটি রাখার প্রয়োজন নেই । এটির -zজন্য বিকল্পটি নির্দিষ্ট করারও দরকার নেইxz , কারণ এটি ডিফল্ট।
এটা দিয়ে কাজ করে gzipএবং bzip2খুব:
tar c some-dir | gzip > some-dir.tar.gz
অথবা
tar c some-dir | bzip2 > some-dir.tar.bz2
সঙ্কোচন করাও বেশ সোজা:
xzcat tarball.tar.xz | tar x
bzcat tarball.tar.bz2 | tar x
zcat tarball.tar.gz | tar x
আপনার যদি কেবল tarসংরক্ষণাগার থাকে তবে আপনি এটি ব্যবহার করতে পারেন cat:
cat archive.tar | tar x
আপনার যদি কেবলমাত্র ফাইলগুলির তালিকা তৈরি করতে হয় তবে ব্যবহার করুন tar t।
আপনি যদি এর জন্য সংক্ষেপণ বিকল্পগুলি ব্যবহার করতে চান xzবা আপনি tarম্যাকওএস ব্যবহার করছেন তবে আপনি সম্ভবত tar -cJfবাক্য গঠনটি এড়াতে চান want
মতে এটি করার man xzউপায় হ'ল:
tar cf - baz | xz -4e > baz.tar.xz
কারণ আমি ভোজাইচ অ্যাডাম কোসেকের ফর্ম্যাটটি পছন্দ করেছি , তবে তথ্যটি নয়:
c নির্দিষ্ট ফাইলগুলির জন্য একটি নতুন সংরক্ষণাগার তৈরি করে। fএকটি ডিরেক্টরি থেকে পড়ুন (এটি সেরা দ্বিতীয়টি কারণ -cf! = -fc)- স্ট্যান্ডার্ড আউটপুট আউটপুট| পাইপ আউটপুট পরবর্তী কমান্ডxz -4eসংকোচন বিকল্পের xzসাথে কল -4e। (সমান -4 --extreme)> baz.tar.xz টার্ডযুক্ত এবং সংকুচিত ফাইলটিতে নির্দেশ দেয় baz.tar.xz কোথায় -4e, আপনার নিজের সংকোচন বিকল্পগুলি ব্যবহার করুন। আমি প্রায়ই ব্যবহার -kকরতে --keepমূল ফাইল এবং -9সত্যিই ভারী কম্প্রেশন জন্য। -zম্যানুয়ালি জিপতে সেট xzকরতে, যদিও এটি অন্যথায় নির্দেশিত না হলে জিপিংয়ের জন্য ডিফল্ট হয়।
রাফায়েল ভ্যান হর্ন প্রতিধ্বনিত করতে , সঙ্কুচিত করা এবং আনতার (নীচের নোটটি দেখুন):
xz -dc baz.tar.xz | tar x
দ্রষ্টব্য: রাফেলের উত্তরের বিপরীতে , xz -dcপরিবর্তে ব্যবহার করুন catxz। আপনি যদি স্ক্রিপ্টিংয়ের জন্য এটি ব্যবহার করেন তবে ডকসই এটিকে সুপারিশ করে। শ্রেষ্ঠ ব্যবহারের একটি অভ্যাস আছে -dবা --decompressপরিবর্তে unxzহিসাবে ভাল। তবে, যদি আপনার অবশ্যই হয়, কমান্ড লাইন থেকে এই কমান্ডগুলি ব্যবহার করা ভাল।
tar -cJfMacOS এ সিনট্যাক্স ব্যবহার না করার জন্য কোনও বিশেষ কারণ ? শুধু কৌতূহলী, কারণ আমি এখনই এটি করছিলাম এবং মনে হচ্ছে এটি কাজ করছে।
এটা চেষ্টা কর: tar -cf file.tar file-to-compress ; xz -z file.tar
বিঃদ্রঃ:
| কারণ এটি একই সাথে আদেশগুলি চালায় runs একের পর এক কমান্ড ব্যবহার করে ;বা &সম্পাদন করে।Jবিকল্প দেখতে পাচ্ছি না , তবে এটি কাজ করে। আমার মনে হয় আপনার RHEL6 দরকার 6
tar -c file-to-compress | xz -z > file.tar.xz।
&একের পর এক কমান্ড আরম্ভ করবে না। পরিবর্তে, এটি পটভূমি প্রক্রিয়া হিসাবে প্রথমটি চালু করবে।
vকমান্ড সুইচ করার জন্য (tar -cJvf) দেখায় ফাইল সংরক্ষণাগার যোগ করা হচ্ছে বাগাড়ম্বরপূর্ণ যাবে।