2011-11-01 10 views
16

में फ़ाइल की मध्य रेखा प्रदर्शित करने के लिए "सिर" और "पूंछ" के संयोजन का उपयोग करना यदि मेरे पास फ़ाइल नाम myownfile.txt है जिसमें टेक्स्ट की 3 पंक्तियां हैं।यूनिक्स

foo 
hello world 
bar 

मैं केवल head और tail कमांड का उपयोग करके बीच जो hello world है में लाइन प्रदर्शित करना चाहते हैं।

+0

क्या होगा अगर फ़ाइल अधिक से अधिक 3 लाइनों है ??? – anil

उत्तर

21
head -2 myownfile | tail -1 

आप क्या चाहते हैं

+0

धन्यवाद यह काम करता है! क्या आप उस हिस्से के बारे में कुछ व्याख्या दे सकते हैं जहां सिर कहता है -2 का अर्थ है लाइन 2 से शुरू होता है? और पूंछ -1 भी नीचे से लाइन 2 से शुरू होता है? – Ali

+2

'हेड -2' फ़ाइल की पहली ** दो ** पंक्तियां प्राप्त करता है। यह आउटपुट 'tail -1' पर पाइप किया गया है जो _piped output_ की अंतिम ** एक ** पंक्ति प्राप्त करता है (यह फ़ाइल के बीच में कहीं भी हो सकता है)। – ADTC

1

head -2 | tail -1 प्रयास करें क्या करना चाहिए। पहली छमाही (head -2) की आखिरी पंक्ति (tail -1) है।

+0

स्पष्टीकरण के लिए धन्यवाद, यह मुझे बहुत मदद करता है – Ali

4

head -2 प्रदर्शित करता है पहले एक फाइल की 2 पंक्तियाँ

$ head -2 myownfile.txt 
foo 
hello world 

tail -1 प्रदर्शित करता है एक फ़ाइल की अंतिम पंक्ति:

$ head -2 myownfile.txt | tail -1 
hello world 
1

पूंछ -2 myownfile.txt | सिर -1

कहीं भी होगी दूसरी पंक्ति दिखाओ।

1

मैं यहां पार्टी के लिए थोड़ा देर हो चुकी हूं, लेकिन ऐसा करने का एक और अधिक लचीला तरीका सिर और पूंछ का उपयोग करने के बजाय अजीब उपयोग करना होगा।

आपका आदेश इस प्रकार दिखाई देगा:

awk 'NR==2' myfile.txt 

हैलो दुनिया