खोज…


परिचय

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

एक फ़ाइल को विभाजित करें

बिना किसी विकल्प के स्प्लिट कमांड को चलाने से एक फ़ाइल को 1 या अधिक अलग-अलग फ़ाइलों में विभाजित किया जाएगा, जिसमें प्रत्येक में 1000 लाइनें होंगी।

split file

यह xaa , xab , xac , आदि नाम की फाइलें xaa , xab प्रत्येक में 1000 लाइनें होंगी। जैसा कि आप देख सकते हैं, उन सभी को डिफ़ॉल्ट रूप से अक्षर x साथ उपसर्ग किया जाता है। यदि प्रारंभिक फ़ाइल 1000 लाइनों से कम थी, तो केवल एक ऐसी फ़ाइल बनाई जाएगी।

उपसर्ग को बदलने के लिए, कमांड लाइन के अंत में अपना वांछित उपसर्ग जोड़ें

split file customprefix

अब customprefixaa , customprefixab , customprefixac आदि नाम की फाइलें बनाई जाएंगी

प्रति फ़ाइल आउटपुट के लिए लाइनों की संख्या निर्दिष्ट करने के लिए, -l विकल्प का उपयोग करें। निम्नलिखित एक फ़ाइल को अधिकतम 5000 लाइनों में विभाजित करेगा

split -l5000 file

या

split --lines=5000 file

वैकल्पिक रूप से, आप लाइनों के बजाय बाइट्स की अधिकतम संख्या निर्दिष्ट कर सकते हैं। यह -b या --bytes विकल्पों का उपयोग करके किया जाता है। उदाहरण के लिए, अधिकतम 1MB की अनुमति देने के लिए

split --bytes=1MB file

हम फ़ाइल को म्यूटेंट फ़ाइलों में विभाजित करने के लिए w विकल्प के साथ sed का उपयोग कर सकते हैं। फ़ाइलों को लाइन पते या पैटर्न को निर्दिष्ट करके विभाजित किया जा सकता है।

मान लें कि हमारे पास यह स्रोत फ़ाइल है जिसे हम विभाजित करना चाहेंगे:

cat -n sourcefile

1 निंग नांग नोंग पर
2 गायों को बोंग कहाँ जाना है!
3 और बंदर सब बोओ!
4 एक नोंग नंग निंग है
5 पेड़ कहाँ पिंग जाते हैं!
६ और चाय के बर्तन जिबर जैबर जू।
7 नोंग निंग नांग पर

फ़ाइल को पंक्ति संख्या से विभाजित करने की आज्ञा दें:

sed '1,3w f1
> 4,7w f2' sourcefile

यह फ़ाइल को F1 में लाइन 1 से लाइन 3 में और सोर्स एफाइल से लाइन एफ को फाइल एफ 2 में लाइन 7 तक लिखता है।

cat -n f1

1 निंग नांग नोंग पर
2 गायों को बोंग कहाँ जाना है!
3 और बंदर सब बोओ!

cat -n f2 

1 एक नोंग नंग निंग है
2 पेड़ कहाँ जाते हैं पिंग!
3 और चाय के बर्तन जिबर जैबर जू।
4 नोंग निंग नांग पर

संदर्भ / पैटर्न द्वारा फ़ाइल को विभाजित करने की कमान:

sed '/Ning/w file1
> /Ping/w file2' sourcefile

यह file1 और file2 में sourcefile को विभाजित करता है। फ़ाइल 1 में निंग से मेल खाने वाली सभी लाइनें हैं, फ़ाइल 2 में पिंग से मेल खाने वाली लाइनें हैं।

cat file1

निंग नांग नोंग पर
एक नोंग नांग निंग है
नोंग निंग नांग पर

cat file2

पेड़ पिंग कहाँ जाते हैं!



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow