मैं किसी विशालकाय फ़ाइल का उपयोग करके किसी विशालकाय फ़ाइल की पहली कुछ पंक्तियों की प्रतिलिपि कैसे बना सकता हूँ और इसके अंत में पाठ की एक पंक्ति जोड़ सकता हूँ?
जवाबों:
head
आदेश पहले प्राप्त कर सकते हैं n
लाइनों। विविधताएं हैं:
head -7 file
head -n 7 file
head -7l file
जिसे फाइल की पहली 7 लाइनें मिलेंगी "file"
। उपयोग करने का आदेश आपके संस्करण पर निर्भर करता है head
। लिनक्स पहले वाले के साथ काम करेगा।
उसी फ़ाइल के अंत में लाइनों को जोड़ने के लिए, उपयोग करें:
echo 'first line to add' >>file
echo 'second line to add' >>file
echo 'third line to add' >>file
या:
echo 'first line to add
second line to add
third line to add' >>file
एक हिट में यह करने के लिए।
इसलिए, इन दो विचारों को एक साथ बांधते हुए, यदि आप input.txt
फ़ाइल की पहली 10 पंक्तियाँ प्राप्त करना चाहते हैं output.txt
और पाँच "="
वर्णों वाली एक पंक्ति को जोड़ना चाहते हैं, तो आप कुछ इस तरह का उपयोग कर सकते हैं:
( head -10 input.txt ; echo '=====' ) > output.txt
इस मामले में, हम एक उप-शेल में दोनों संचालन करते हैं ताकि आउटपुट स्ट्रीम को एक में समेकित किया जा सके, जो तब आउटपुट फ़ाइल बनाने या अधिलेखित करने के लिए उपयोग किया जाता है।
मैं यह मान रहा हूं कि आप जो कुछ हासिल करने की कोशिश कर रहे हैं वह एक टेक्स्टफाइल की पहली कुछ पंक्तियों के बाद एक पंक्ति सम्मिलित करना है।
head -n10 file.txt >> newfile.txt
echo "your line >> newfile.txt
tail -n +10 file.txt >> newfile.txt
यदि आप फ़ाइल से लाइनें बाकी नहीं करना चाहते हैं, तो बस पूंछ भाग को छोड़ दें।
(head -n10 file.txt ; echo "Some stuff" ; tail -n +10 file.txt) > newfile.txt
head -n 100 yourfile.csv > shrunkfile.csv && echo 'morelines' >> shrunkfile.csv