আমি কীভাবে সেরা, স্ট্যান্ডার্ড জিপ সংক্ষেপন অর্জন করতে পারি?


20

সংকোচনে কতক্ষণ সময় লাগে সেদিকে আমার খেয়াল নেই, আমি যে দুটি জিনিস অর্জন করতে চাই তা হল দুটি জিনিস:

  • নিখুঁত সেরা সম্ভাব্য সংক্ষেপণ অনুপাত
  • উইন্ডোজ এবং উইনজিপ এর মতো মানক পাঠকদের সাথে সামঞ্জস্য

সুতরাং 7-জিপের মতো পরামর্শগুলি খুব বেশি কার্যকর হবে না, যদি না 7-জিপটি স্ট্যান্ডার্ড জিপ সংক্ষেপে (এটি খুব ভাল .7z ফর্ম্যাটটি ব্যবহারের বিপরীতে) থেকে কিছুটা ভাল না হয়।

আদর্শভাবে আমি খুঁজছি:

  • একটি টুকরা সফ্টওয়্যার সুপারিশ
  • সেই সফ্টওয়্যারটির জন্য নির্দিষ্ট সেটিংস যা পরম সর্বোত্তম সংক্ষেপণ সক্ষম করে
  • এমন কিছু যা বিনামূল্যে

মনে রাখবেন, সংকোচনে কত সময় লাগে এটি কোনও সমস্যা নয়!

একটি শেষ কথা - কিছু ফাইলগুলি "ওয়ার্ড সাইজ" বা "অভিধানের আকার" এর মতো বিভিন্ন সেটিংসের সাথে আরও ভালভাবে সংকুচিত হতে পারে - এমন কোনও সরঞ্জাম রয়েছে যা ফাইলগুলি বিশ্লেষণ করতে পারে এবং সবচেয়ে উপযুক্ত সংকোচনের অনুপাত বেছে নিতে পারে, বা উইনজিপ, 7-জিপ করে ইত্যাদি ইতিমধ্যে কি?

উত্তর:


20

আপনি যদি উইন্ডোজ এক্সপিতে নির্মিত জিপ ফোল্ডারগুলির সামর্থ্যের সাথে সামঞ্জস্যতা চান তবে আপনি ডিফল্ট সংকোচনে আটকে আছেন। আমি মনে করি না আপনি উইনজিপ এবং পাওয়ারআরসিভারের সাম্প্রতিক সংস্করণগুলিতে ডিফলট 64 ব্যবহার করতে পারবেন, উন্নত সংক্ষেপণের পদ্ধতিগুলি (যেমন এলজেডএমএ, পিপিএমডি, ওয়াভপ্যাক, বিজিপ 2 ইত্যাদি) ব্যবহার করতে পারেন I পাওয়ারআরচিভার অন্তত সেই ফাইলগুলির জন্য .zipx এক্সটেনশনটি ব্যবহার করে ডিফল্ট হয় - আমি মনে করি না উইনজিপ এখনও এটি করছে।

7-জিপ তৈরি করতে পারে এমন সবচেয়ে ছোট্ট জিপ ফাইলটি নিম্নলিখিত কমান্ড লাইনের সাহায্যে করা যেতে পারে:

7za a -mm=Deflate -mfb=258 -mpass=15 -r C:\Path\To\Archive.zip C:\Path\To\Files\*

বিশেষ দ্রষ্টব্য: 7-জিপের ওয়াইল্ডকার্ড পার্সার সিস্টেমে থাকা অন্যদের মতো নয়। *.*মানে সমস্ত ফাইল যার এক্সটেনশন রয়েছে। সমস্ত ফাইল *মানে ।

এইভাবে .zip ফাইলগুলি তৈরি করা (এবং সম্ভবত, অন্যান্য সরঞ্জামগুলি ব্যবহার করে যা ছোট "স্ট্যান্ডার্ড" .zip ফাইলগুলি তৈরি করার চেষ্টা করে) সত্যই, খুব ধীর। আপনি স্ব-উত্তোলন সংরক্ষণাগারগুলি তৈরি করতে 7-জিপ বা উইনআর ব্যবহার করে সম্ভবত যথেষ্ট সময় এবং স্থান সাশ্রয় করবেন।


আমার 7z ত্রুটিটি "-m0" এ করেছে তবে আমি অনুমান করি যে "-মিমি" সাম্প্রতিক সংস্করণগুলিতে একই কাজ করবে। আমি আরও লক্ষ্য করেছি যে, আমার ক্ষেত্রে (জেপিজি ফাইলগুলি সংক্ষেপণ করে) "-mfb = 258 -mpass = 15" এর পরিবর্তে "-mx9" ব্যবহার করে ফলাফল এলোমেলোভাবে গড়ে ± 15 বাইট দ্বারা পৃথক হবে (ব্যতিক্রমগুলি ± 50 এর দশকে যাচ্ছে) )
মার্ক জেরোনিমাস

1
@ জোম-বি: আপনি ঠিক বলেছেন, -mm=তার পরিবর্তে হওয়া উচিত ছিল -m0=। সংরক্ষণাগারগুলিতে -m0=ব্যবহৃত হয় .7z। এছাড়াও, 7-জিপ ম্যানুয়ালটি উল্লেখ করে যে -mx=9জিপ সংরক্ষণাগারগুলির সমতুল্য -mfb=128 -mpass=10। আমি যা লক্ষ্য করেছি তা -mfb=258 -mpass=15হ'ল এটি সর্বদা তুলনায় অনেক ধীর -mx=9এবং বেশিরভাগ ক্ষেত্রে খুব বেশি স্থান সঞ্চয় হয় না (বা মাঝে মাঝে কয়েকটি বাইট আরও বেশি ব্যবহার করে)। প্রতি একবারে একবারে এটি একটি শালীন বিট স্থান সংরক্ষণ করে।
আফরাজায়

পূর্ববর্তী মন্তব্যে "অনেক বেশি" ধীর গতিতে 3 গুণ বেশি ধীরে ধীরে অনুবাদ হয়। স্থান হিসাবে, ধীর বিকল্প প্রায় সংরক্ষণাগার দেয়। 99.885% আকার দ্রুত (অর্থাত্ -mx = 9--পাটা = 15) সংস্করণের তুলনায়। সুতরাং, 3x আরও সময়ের জন্য কেউ কেবলমাত্র 0.115% স্থান বাঁচাতে পারে। সুতরাং, যদি না থাকে যে 0.115% লাভ খুব গুরুত্বপূর্ণ না হয়, -pass = 15 এর পরিবর্তে -mx = 9 এ যান।
টিভি

8

আমি জানি যে সেরা ডিফল্ট (স্ট্যান্ডার্ড জিপ দ্বারা ব্যবহৃত সংক্ষেপণ বিন্যাস) হ'ল:

জোপফ্লি ( মূল থেকে সংরক্ষণাগারভুক্ত ) ব্যবহার করে ডেটা কম্প্রেশন থেকে ফাইল সংকুচিত ফাইলের আকারের তুলনা ডিফল্ট করুন :

╔══════════════╦═══════════╦═════════╦═════════╦═════════╦═════════╗
║              ║Corpus size║gzip ­-9  ║7-­zip    ║kzip     ║Zopfli   ║
╠══════════════╬═══════════╬═════════╬═════════╬═════════╬═════════╣
║Alexa-top-10k ║  693108837║128498665║125599259║125163521║123755118║
║Calgary       ║    3141622║  1017624║   980674║   978993║   974579║
║Canterbury    ║    2818976║   730732║   675163║   674321║   669933║
║enwik8        ║  100000000║ 36445248║ 35102976║ 35025767║ 34995756║
╚══════════════╩═══════════╩═════════╩═════════╩═════════╩═════════╝

এমনকি এলোমেলো পিএনজি- তেও জোফফ্লি পিএনজিআউটের চেয়ে 0.5% ভাল হতে সক্ষম হয়েছিল । জোপফ্লি তাদের সবার মধ্যে সবচেয়ে ছোট করে তোলে।


আসল জিপ কমান্ডের মতো ফাইলের সেট সংকুচিত করতে আমি জোফফ্লি কীভাবে ব্যবহার করতে পারি?
পানায়োটিস

1
@Panayotis একটি Google অনুসন্ধান zopfli zip জন্য করতে বিশালাকার github.com/google/zopfli/issues/29 কীভাবে zopfli প্রকল্পের করব না জিপ ফাইল সরাসরি সম্পর্কে আলোচনা কিন্তু AdvanceCOMP এর advzip মত সরঞ্জাম আলোচনা যা ব্যাকএন্ড যেমন zopfli ব্যবহার করতে পারেন অন্তর্ভুক্ত ।
আনন

5

ধরে নেওয়া যাক আপনি Windows হয়: আপনি এখনও জিপ ফরম্যাটে ব্যবহার করতে চান তাহলে, আমি কেন সিলভারম্যান এর বিনামূল্যের KZIP কম্যান্ড-লাইন ইউটিলিটি ব্যবহার সুপারিশ করবে, পাওয়া এখানে । আপনার সংক্ষিপ্ত করতে প্রয়োজনীয় সমস্ত ফাইল সমন্বিত ফোল্ডারের ভিতরে এটি অনুলিপি করুন, সিএমডি ব্যবহার করে সেই ফোল্ডারে যান এবং নিম্নলিখিত কমান্ডটি চালান:

kzip /r <filename of ZIP file> *.*

রোল্ডের পরামর্শ অনুসারে, kzip.exeসংরক্ষণাগার / জিপ ফাইলের অন্তর্ভুক্ত হওয়া রোধ করতে আপনার সিস্টেমের PATH পরিবর্তনশীল ডিরেক্টরিটি অন্তর্ভুক্ত করা ভাল ।

এখনও অবধি, আমি খুঁজে পেয়েছি কেজেপআইপি দিয়ে তৈরি জিপ ফাইলগুলি অন্যান্য জিপ কমপ্রেসিং প্রোগ্রামগুলির দ্বারা তৈরি করা তুলনায় প্রায় 10-20% ছোট। এগুলি অন্যান্য সংরক্ষণাগার সফ্টওয়্যার (উইনজিপ, উইনআরআর, 7-জিপ ইত্যাদি) এবং উইন্ডোজ দ্বারা সম্পূর্ণ উন্মুক্ত able


5
এটিকে ডিরেক্টরিতে না ফেলে তবে আপনার সিস্টেমের PATH এ কোথাও রাখবেন?
আরডি

1
আমার একই প্রয়োজনীয়তা ছিল - অবশ্যই উইন্ডোজ স্ট্যান্ডার্ড জিপ কার্যকারিতা দ্বারা সমর্থিত। কেজেআইপি হ'ল আমি চ্যাম্পের মতো কাজ করে যা ব্যবহার করে শেষ করেছি। আপনার পরিবেশে সবচেয়ে ভাল কি কাজ করে তা সম্পর্কে ভাল ধারণা পেতে / স / বি / এন বিকল্পগুলির সাথে খেলতে ভুলবেন না।
গয়িক্স

অবশ্যই! PATH ভেরিয়েবল। আমি আমার উত্তর সম্পাদনা করেছি। ধন্যবাদ রোল্ড!
ইসেক্সেক

বা এক্সিকিউটেবলের পথ সহ কেবলমাত্র কমান্ডটি উপস্থাপন করুন
মাইক্রোথপিক

1

.Zip ফাইল টাইপ এবং একটি ডিফলেট 64 সংক্ষেপণ পদ্ধতি ব্যবহার করে স্বতন্ত্র জিপ ফাইলগুলিতে ফোল্ডারের সমস্ত ফোল্ডার সংকুচিত করতে সুপার সাধারণ স্ক্রিপ্ট।

@echo off
for /d %%X in (*) do "c:\Program Files\7-Zip\7z.exe" a "%%X.zip" "%%X\" -tzip -mx9 -mm=Deflate64

-1

কমপ্রেসার কাজ করার সময় আপনাকে কত স্মৃতি উপলব্ধ করতে হবে এটি তার আরও সীমা। 7-জিপ ব্যবহার করে, আমি। জিপ ফর্ম্যাট, আল্ট্রা সংক্ষেপণ, এলজেডএমএ সংক্ষেপণ পদ্ধতি এবং ডিফল্ট 64 এমবি অভিধানের আকার সহ একটি সংরক্ষণাগার প্যাক করব। আপনার যদি স্মৃতি উপলব্ধ থাকে, তবে অভিধানের আকারটি আপ করুন, তবে নোট করুন যে 64৪ এমবি অভিধানের সাথে সংকোচনের জন্য আপনার প্রায় 3 গিগাবাইট মেমরি উপলব্ধ থাকতে হবে। একটি বৃহত্তর অভিধান ব্যবহার করে 7-জিপকে আরও বেশি ম্যাচগুলি অনুসন্ধান করার অনুমতি দেওয়া উচিত এবং যদি আপনি মেমরিটি বহন করতে পারেন তবে আরও ভাল সংক্ষেপণ সরবরাহ করা উচিত। এলজেডএমএ গিজেপ (ডিফলেট / ডিফলেট 64, আমার মনে হয়) এবং বিজিপ 2 উভয়ই কন্টেন্টের উপর ভিত্তি করে 10-12% অবধি ভালভাবে 5% দ্বারা বিট করে।

আমি সর্বোত্তম শব্দ / অভিধানের আকার সন্ধান করার কোনও সরঞ্জাম সম্পর্কে জানি না, যদিও আমি মনে করি আপনি খুঁজে পাবেন যে সংকোচন পদ্ধতির ইনপুট ডেটার সাথে আরও শক্তিশালী সম্পর্ক রয়েছে এবং অন্যথায় গড় / ডিফল্ট ভাল হওয়া উচিত।


3
এলজেডএমএ নিয়ে আমার কিছুটা সমস্যা হচ্ছে - উদাহরণস্বরূপ, আমি 7zip এ যা সেটিংস চেষ্টা করি তা বিবেচনা না করেই, এই জিপের ( joshz.com/Bad.zip ) টেক্সট ফাইলটি উইন্ডোজ 'বিল্ট ইন বিল্ট' ব্যবহার করে সংক্ষেপন করবে না (আমি উইন্ডোজ ব্যবহার করছি) 7)।
জোশ কমলে

(আমি যে জিপ ফাইলটি লিঙ্ক করেছি তাতে রেফারেন্সের জন্য ভ্রান্ত ফাইল রয়েছে তবে এটি
এলজেডএমএ

@ জোশকমলি আমি অন্তর্নির্মিত উইন্ডোজ ফোল্ডার সংক্ষেপণ সরঞ্জামের জন্য সমর্থিত সংক্ষেপণ স্কিমগুলির একটি তালিকা খুঁজে পেতে অক্ষম। LZMA জন্য উইকিপিডিয়া মতে, এটি করা হয় , WinZip এবং বিভিন্ন প্ল্যাটফর্ম জুড়ে অনেক অন্যান্য কম্প্রেশন সরঞ্জাম দ্বারা সমর্থিত তাই আমি এটা দিয়ে যেতে সিদ্ধান্ত নেয়। * .জিপটি কেবল একটি ধারক বিন্যাস, সুতরাং আমি জানি না যে কোনও "অফিসিয়াল" সংক্ষেপণ রয়েছে যা কোন সরঞ্জামগুলি সমর্থন করবে, বা কেবল সাধারণগুলি (যেমন * .ভি প্রায় কোনও ধরণের ভিডিও ধারণ করতে পারে তার সমান)) যদি আপনার এটি সর্বদা কার্যকর হয় তা নিশ্চিত করার প্রয়োজন হয় তবে এটিকে স্ব-উত্তোলন হিসাবে প্যাক করুন।
দারথ অ্যান্ড্রয়েড

-3

যদি আপনি খুঁজছেন শ্রেষ্ঠ সংকোচকারী জন্য উইন্ডোজ পরিবেশের জন্য , আমি হয় চেষ্টা করার জন্য আপনাকে পরামর্শ দিচ্ছি সাথে 7-zip .zip ফরম্যাটে LZMA 'কম্প্রেশন পদ্ধতি' বা 7-zip * .7z SFX এর আর্কাইভ ব্যবহার করুন। সংক্ষিপ্ত ফাইলগুলিতে এসএফএক্স সংরক্ষণাগারগুলির প্রায় 130 কিলোবাইটের ওভারহেড থাকে এবং .7z এবং .zip এর মধ্যে আকারের পার্থক্য বড় হলে এটি ব্যবহারের পক্ষে উপযুক্ত।

আরেকটি ভাল তবে অস্বাভাবিক প্রতিদ্বন্দ্বী হলেন এনএসআইএস যা অত্যন্ত কাস্টমাইজযোগ্য এক্সেস তৈরি করতে LZMA সংক্ষেপন মোড ব্যবহার করতে পারে। আমি জানি এনএসআইএস কোনও সংক্ষেপক নয় বরং একটি স্ক্রিপ্টিং ভাষা তবে আমি মুগ্ধ হয়েছি এটি 7-জিপ এসএফএক্সের চেয়ে আরও ভাল পারফর্ম করে।

আমি 2 টি ফাইল দিয়ে একটি পরীক্ষা করেছি -

  • অটোহটকি-এইচ এক্স (৯৪ (কেবি)
  • AutoHotkey.dll (1003 কেবি)
  • মোট আকার - 1955 কেবি

  • 7-জিপ। জিপ - 794 কেবি
  • 7-জিপ .7z এসএফএক্স - 594 কেবি
  • এনএসআইএস এলজেডএমএ সলিড কম্প্রেশন - 552 কেবি
  • 7-জিপ .7z - 461 কেবি

যেহেতু # 4 আপনি চান তা নয়, স্পষ্ট বিজয়ী এনএসআইএস তবে ব্যবহারিক কারণে, আমি পরামর্শ দিই যে। জিপটি সংকোচিত আকার 500 কেবিএসের চেয়ে কম এবং যদি বড় হয় তবে এক্স-মেকিং সরঞ্জামের সাথে যান যেমন 7-জিপ এসএফএক্স বা এনএসআইএস (বিশেষত 7-জিপ সেটআপ করা সহজ)।


2
প্রশ্নের প্রয়োজনীয়তাগুলি নির্দিষ্টভাবে 7z এবং অন্যান্য ফর্ম্যাটগুলি বাদ দেয়।
বব

@ বোবি তিনি বলেছিলেন যে একটি কম্প্রেসার যা উইন্ডোজের সাথে সামঞ্জস্যপূর্ণ এবং এক্সপি (আমার # 2 এবং # 3)। 7zটি কেবল # 4 যা আমি উল্লেখ করেছি।
আভি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.