क्या .bz2 फ़ाइल के विघटित आकार को निर्धारित करने का कोई तरीका है?


34

वहाँ वास्तव में पूरी बात decompressing बिना एक .bz2 फ़ाइल के विघटित आकार को मुद्रित करने के लिए एक रास्ता है?


तो bzip आउटपुट में मूल फ़ाइल के बारे में कोई मेटाडेटा नहीं है? > :(
एंडोलिथ

ऐसा नहीं है कि मैंने संदर्भ देखा है। : /
क्विक क्वोटोट

जवाबों:


36

जैसा कि दूसरों ने बताया, bzip2 ज्यादा जानकारी नहीं देता है। लेकिन यह तकनीक काम करती है - आपको फ़ाइल को डिकम्प्रेस करना होगा , लेकिन आपको डिकम्प्रेस्ड डेटा को डिस्क पर लिखना नहीं होगा , जो आपके लिए "अच्छा पर्याप्त" समाधान हो सकता है:

$ ls -l foo.bz2
-rw-r--r-- 1 ~quack ~quack 2364418 Jul  4 11:15 foo.bz2

$ bzcat foo.bz2 | wc -c         # bzcat decompresses to stdout, wc -c counts bytes
2928640                         # number of bytes of decompressed data

आप उस आउटपुट को किसी अन्य रूप में पाइप कर सकते हैं जिससे आपको मानव-पठनीय रूप दिया जा सके:

$ ls -lh foo.bz2
-rw-r--r-- 1 quack quack 2.3M Jul  4 11:15 foo.bz2

$ bzcat foo.bz2 | wc -c | perl -lne 'printf("%.2fM\n", $_/1024/1024)'
2.79M

9
खैर, कि गणना के लिए केवल 100% सीपीयू के पांच मिनट लगे।
एंडोलिथ

2
केवल? और यह एक डिस्क को भर देगा? मैं एक पुराने linux स्थापित है कि केवल 407meg अभी तक मेरे गरीब प्राचीन सर्वर 30-45 मिनट के लिए निकालने के लिए एक संकुचित टारबॉल मिल गया है। जिसमें डिस्क, थियो तक लिखना शामिल है, मुझे उस स्क्रिप्ट को समय पर चलाना होगा। आधे घंटे में फिर से
मिलें

मैंने पहली परीक्षा के लिए सबसे छोटी फाइल उठाई, बेशक। 140 एमबी संपीड़ित -> 3 जीबी असम्पीडित। बड़ी फाइलें 5 जीबी संकुचित हैं ...
एंडोलिथ

हे .. lemme पता है कि 5GB कितना बड़ा हो जाता है ... और इसे XD के माध्यम से पता लगाने में कितना समय लगता है
quix quixote

-3

बिना पढ़े बिना .bz एक्सटेंशन टेक्स्ट फ़ाइल पढ़ने के लिए।

bzcat dbtax_ext_en.ttl.bz2 |zless

1
bzcat और zless इस तरह से एक साथ काम नहीं करते हैं। "Bzcat file.bz2।" का प्रयोग करें "या" bzless file.bz2 ", या यदि आपके पास gzipped फ़ाइल है," zcat file.gz। कम "या" zless file.gz "। वास्तव में, zless नोटों के लिए आदमी पृष्ठ कि "Zless संपीड़ित डेटा के साथ काम नहीं करता है जो इसे मानक इनपुट के माध्यम से पाइप किया जाता है; इसके लिए आवश्यक है कि इनपुट फ़ाइलों को तर्क के रूप में निर्दिष्ट किया जाए।"
निक रूसो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.