सवाल बड़ी फ़ाइलों को छोटे भागों में कैसे विभाजित करें?


मेरे पास एक बड़ी फाइल है (उदाहरण के लिए 8 जीबी)। मैं इसे कई हिस्सों में कैसे विभाजित कर सकता हूं, मान लें कि 3 बराबर भाग हैं, और उसके बाद मैं उन्हें बाद में कैसे एकीकृत करूं?


163
2017-07-26 14:42


मूल


ऐसा लगता है कि इसका एक डुप्लिकेट है askubuntu.com/questions/12172/... - Jo-Erlend Schinstad
क्या आप निश्चित हैं "ऐसा लगता है"? बिल्ली, यह वही सटीक बात है। यहां छोड़कर अब "अधिक उदाहरण और विकल्प" के बोनस के साथ है। - Luis Alvarado♦
यदि आप इसे विभाजित करना चाहते हैं, तो आप इससे अधिक कह सकते हैं, और चाहे आप इसे बाइट सबस्ट्रिंग में विभाजित करना चाहते हैं या आप किसी भी प्रकार की त्रुटि जांच या लेबलिंग में लपेटने के लिए खुले हैं या नहीं। यदि इसे छोटे मीडिया या नेटवर्क ट्रांसफर के लिए रखना है तो मैं कुछ ऐसा देखता हूं par2। - poolie
क्रॉस रेफरी: stackoverflow.com/questions/7764755/... - Trevor Boyd Smith
समान रूप से विभाजित करने के लिए एक लाइनर एन: (1.) लाइनों द्वारा विभाजित - $ $ (($ (wc -l <$ {your_filename}) / $ {N})) $ {your_filename} (2.) द्वारा विभाजित बाइट्स विभाजन - बाइट्स $ (($ (wc -c <$ {your_filename}) / $ {N})) $ {your_filename} - Trevor Boyd Smith


जवाब:


इसे पूरा करने के कई तरीके हैं। चलो बुनियादी लोगों के साथ शुरू करते हैं।

का उपयोग करते हुए विभाजित करें तथा बिल्ली आदेश:

आइए कहें कि मेरे पास एक छवि है और यह बहुत बड़ी है (10 एमबी)। मैं बस इतना करता हूं:

split --bytes=1M /path/to/image/image.jpg /path/to/image/prefixForNewImagePieces

और फिर इसे एक साथ रखने के लिए मैं बिल्ली का उपयोग करता हूं:

cat prefixFiles* > newimage.jpg

उदाहरण के लिए:

मान लें कि फ़ोल्डर में जहां छवि है:

split --bytes=1M myimage.jpg new

अगर छवि छवियों नामक निर्देशिका के अंदर है तो आप यह भी कर सकते हैं:

split --bytes=1M images/myimage.jpg new

अगर छवि निर्देशिका / घर / साइरेक्स / छवियों के अंदर है तो आप यह कर सकते हैं:

split --bytes=1M /home/cyrex/images/myimage.jpg new

(उपर्युक्त सभी मामलों में यह विभाजित होगा myimage.jpg 1 एमबी टुकड़ों में और नए शब्द के साथ टुकड़ों का नाम उपसर्ग करें। तो वे दिखेगा newaa, newab, newac, newad...)

यदि आप एक विभाजित कर रहे हैं पाठ फ़ाइल और इसे लाइनों से विभाजित करना चाहते हैं आप इसे कर सकते हैं:

split -l 1000 book.txt new

जो टेक्स्ट लाइन को 1000 लाइनों की आउटपुट फाइलों में विभाजित करेगा। यह फ़ाइल को विभाजित करने का एक और तरीका है और अधिकांशतः लॉग, एसक्यूएल डंप, सीएसवी फाइल इत्यादि जैसे टेक्स्ट फाइलों के लिए उपयोग किया जाता है।

तब मैं उन्हें विलय करता हूं

cat new* > newimage.jpg

ये एक तरीका है। आप विभाजित टुकड़ों के आकार को भी बदल सकते हैं। बस जो हिस्सा कहता है उसे बदलें --bytes=1M सेवा मेरे --bytes=1K गीगा के लिए 1 किलोबाइट या 1 जी के लिए, या किसी अन्य नंबर की तरह --bytes=4K 4 केबी टुकड़ों के लिए।

का उपयोग करते हुए नॉटिलस

एक और तरीका नॉटिलस के गुई में संपीड़न विकल्प है। यह आपको फ़ाइल या फ़ाइलों को विभाजित करने का विकल्प देता है जिन्हें आप छोटे मेगाबाइट आकार में संपीड़ित करना चाहते हैं। यह आसान और आसान है।

फिर भी एक और तरीका उपयोग कर रहा है 7z

मान लें कि आपके पास एक आईएसओ छवि है ubuntu.iso आप यह कर सकते हैं:

7z a -v5m -mx0 ubuntu.7z ubuntu.iso

इससे 5 एमबी आकार की फाइलें बन जाएंगी ubuntu.iso-v5m वॉल्यूम आकार है ताकि आप इसे 10, 12, 1, 3 में बदल सकें और एम को किलोबाइट्स आदि के लिए बदल दिया जा सके; -mx0 स्विच 7-ज़िप को संपीड़न का उपयोग करने के लिए बताता है, यानी, डेटा को भागों में विभाजित करने के लिए।

निकालने के लिए बस करो

7z x ubuntu.7z.001

इस तरह आप पहली फाइल निकालते हैं और 7z क्रमशः निम्न फ़ाइलों से निकालने लगते हैं। आप भी कर सकते हैं

7z e ubuntu.7z.001

जिसका यहां एक ही प्रभाव है।


244
2017-07-26 15:05



चूहे को शामिल नहीं किया गया है क्योंकि अभी तक खुला स्रोत नहीं है (जहां तक ​​मुझे पता है) और टैर नहीं जोड़ा क्योंकि मैं विभाजन करने के आसान तरीकों की तलाश में था। - Luis Alvarado♦
Gzip भी जोड़ें - 7zip को एक पैकेज स्थापित iirc की आवश्यकता है - Broam
मुझे पता है कि, Gzip (टैर की तरह) संपीड़ित फ़ाइल को विभाजित करने के लिए एक आसान विकल्प नहीं है। सभी मामलों में मैंने उन्हें संपीड़न फ़ाइल को "विभाजित" करने के लिए स्प्लिट कमांड का उपयोग करके देखा है। तो यह एक कमांड नहीं होगा बल्कि एक ही उद्देश्य प्राप्त करने के लिए कमांड का एक समूह होगा जिसे स्प्लिट या 7z जैसे एकल के साथ किया जा सकता है। 7Zip की स्थापना के लिए (जो p7zip-full पैकेज का p7zip है) उसने मुझे कभी भी आईआईआरसी के लिए नहीं पूछा है;)। - Luis Alvarado♦
पाठ फ़ाइलों का विभाजन जोड़ा गया। इसके बारे में भूल गए और आज ऐसा हुआ कि मुझे कुछ सीएसवी फाइलों को विभाजित करने की आवश्यकता थी। यह उन डंपों के लिए है जिन्हें आपको विशिष्ट लाइनों की आवश्यकता होती है। - Luis Alvarado♦


का उपयोग करते हुए split -b उचित संख्या के साथ, आप तीन टुकड़े प्राप्त कर सकते हैं।

संख्या हो सकती है:

size=$(wc -c <"file name")
one_third=$((size/3+1))

पुन: इकट्ठा करने के लिए, बिल्ली का प्रयोग करें

cat "file name"* > "file name"

मैन्युअल पेज विवरण भरने में मदद करेंगे।


9
2017-07-26 14:58





HJSplit

फ़ाइलों को विभाजित करने और पुन: संयोजित करने के लिए एक लोकप्रिय फ्रीवेयर कार्यक्रम है। कार्यक्रम विंडोज, लिनक्स और कई अन्य प्लेटफार्मों पर उपलब्ध है।

लिनक्स के लिए एचजेएसप्लिट पूर्ण ग्राफिकल यूजर इंटरफेस के साथ लिनक्स के लिए एक फ्रीवेयर फ़ाइल स्प्लिटर है। एचजेएसप्लिट 100 से अधिक गीगाबाइट्स, स्प्लिट, जॉइन / रीकॉम्बाइन, एमडी 5 चेकसम, फ़ाइल-तुलना, "इंस्टॉल किए बिना रन" के फ़ाइल आकार का समर्थन करता है और कार्यक्रम पूरी तरह से पोर्टेबल है।

लिनक्स के लिए एचजेएसप्लिट को स्थापित करने की आवश्यकता नहीं है और यह किसी विशेष पुस्तकालयों पर निर्भर नहीं है। बस अपनी पसंद की निर्देशिका में hjsplitlx.tar.gz संग्रह निकालें और प्रोग्राम को Linux फ़ाइल प्रबंधक या टर्मिनल विंडो से प्रारंभ करें। आपको प्रोग्राम की फ़ाइल अनुमतियों को 'निष्पादन योग्य' में समायोजित करने की आवश्यकता हो सकती है।

enter image description here


4
2017-07-26 14:53



मुझे कहना होगा कि विंडोज फ़ाइल भी लिनक्स पर काम करती है। - Uri Herrera
इस तरह के कार्यक्रम में जाने से पहले फ़ाइल को विभाजित / शामिल करने के कई तरीके हैं। मैं बजाय लिनक्स द्वारा प्रदान किए जाने वाले शक्तिशाली विकल्पों का उपयोग करता हूं और फ़ाइलों को विभाजित / विलय करने के लिए इसमें कुछ तेज़, सुरक्षित तरीके हैं। - Luis Alvarado♦
यह सुरक्षित, तेज़ है, और क्रॉस-प्लेटफ़ॉर्म है जिसमें LINUX शामिल है, यह एक विन्डोज़-केवल एप्लिकेशन नहीं है जो कि लिनक्स में भी चलने के लिए होता है ... - Uri Herrera
मैं एचजेएसप्लिट का उपयोग करता हूं, यह बहुत अच्छा और सरल है। आदेशों और पैरामीटर नामों को टाइप करने की आवश्यकता नहीं है जब आप पैरामीटर मानों को टेक्स्ट बॉक्स में भर सकते हैं। - Matthew Read
और एक मुफ्त डाउनलोड होने से यह बदतर हो जाता है? और मुझे यह कहना चाहिए कि ओपी में अब वह मुफ्त सॉफ़्टवेयर के लिए पूछता है (जो यह है, यह मुफ़्त है) और जो आप इसका जिक्र कर रहे हैं उसे ओपन कहा जाता है, क्या आपको कोई फर्क पड़ता है? - Uri Herrera


जीनोम विभाजित? http://gnome-split.org/

गनोम स्प्लिट एक ऐसा उपकरण है जो आपको फ़ाइलों को विभाजित करने और उन्हें वापस विलय करने की अनुमति देता है। यह जावा में लिखा गया है और जीटीके + यूजर इंटरफेस का उपयोग करता है (जावा-ग्नोम प्रोजेक्ट के लिए धन्यवाद)। लक्ष्य समान परियोजनाओं के मूल कार्यान्वयन की पेशकश करना है जो एकाधिक फ़ाइल स्वरूपों (जैसे Xtremsplit) को संभाल सकता है।

http://www.omgubuntu.co.uk/2010/08/split-large-files-easily-in-ubuntu-with-gnome-split/


4
2017-07-26 20:47





HOZ - हचा ओपन ज़ोर्स v1.65 - http://hoz.sourceforge.net/

enter image description here

डेवलपर से:

ओझेड वह है जिसे आप 'फ़ाइल स्प्लिटर' कहते हैं। इसका फ़ाइल प्रारूप है   'हचा' सॉफ्टवेयर द्वारा उपयोग किए जाने वाले एक जैसा, एक प्रसिद्ध स्प्लिटर   स्पेन और लैटिनमेरिका। HOZ एक खुला स्रोत और पोर्टेबल सी है   एक 'हचा' संगत स्प्लिटर के कार्यान्वयन।

HOZ 'हचा' से छोटा और तेज़ है।

बीटीडब्ल्यू, मैंने 'ज़ोर' में 'एस' का 'जेड' आइन्टेड इस्तेमाल किया क्योंकि 'होज' है   स्पेनिश में 'सिकल', और चूंकि 'हचा' के लिए स्पेनिश शब्द है   'कुल्हाड़ी' ...

स्थापित करने के बाद, आप ड्रॉप करके होज जीयूआई का उपयोग कर सकते हैं ghoz टर्मिनल में ऑपरेशन इतना आसान है कि किसी स्पष्टीकरण की आवश्यकता नहीं है लेकिन डेवलपर की साइट पर और जानकारी प्राप्त की जा सकती है।

सौभाग्य!


3
2017-07-26 15:09





लकड़हारा

एक मुक्त फ़ाइल विभाजित और जावा में विकसित उपयोगिता विलय। यह एक छोटा आकार का एप्लीकेशन है जो उपयोगकर्ता को किसी भी प्रकार की फ़ाइल को केबी, एमबी या जीबी में छोटे आकार में विभाजित करने की अनुमति देता है।

यह लिनक्स के साथ ही विंडोज के लिए भी उपलब्ध है।

वुडकटर मूल फ़ाइलों को विलय करने के 3 तरीके प्रदान करता है। WoodCutter एक मर्ज फ़ाइल बनाता है जिसे सभी फाइलों में शामिल होने के लिए वुडकटर एप्लिकेशन द्वारा संसाधित किया जा सकता है। यदि विभाजित फ़ाइलों के प्राप्तकर्ता में वुडकटर स्थापित नहीं है, तो मूल फ़ाइल भी प्राप्त की जा सकती है क्योंकि वुडकटर भी बैच फ़ाइल और फ़ाइलों को मर्ज करने के लिए एक शैल स्क्रिप्ट फ़ाइल बनाता है। बैच फ़ाइल का उपयोग विंडोज प्लेटफ़ॉर्म में किया जाएगा और शैल स्क्रिप्ट का उपयोग लिनक्स प्लेटफ़ॉर्म में किया जाएगा।

http://java-puzzle.blogspot.com/2009/07/woodcutter.html


0
2017-07-28 14:49



लाइसेंस "फ्रीवेयर" है। मुझे लगता है कि रेपो में एक फ्री सॉफ्टवेयर उपकरण एक बेहतर समाधान है। - Broam