किसी फ़ाइल की पहली कुछ पंक्तियाँ प्रदर्शित करें


24

मेरे पास एक फ़ोल्डर है जिसमें काफी कुछ फाइलें हैं। मैं निम्नलिखित प्रदर्शित करना चाहता हूं:

filename_1
first line of file1
second line of file1
third line of file1
filename_2
first line of file2
second line of file2
third line of file2
filename_3
first line of file3
second line of file3
third line of file3

आदि मैं कैसे कर सकता हूँ?

जवाबों:


54

आप ऐसा करने के लिए headकमांड का उपयोग करते हैं, प्रत्येक फाइल से लाइनों की संख्या के साथ -n तर्क, इस तरह से:

head -n3 *

या

head -n3 *.txt

यह एकल फ़ाइल के लिए भी काम करता है:

head -n3 filename.txt

बस एक टिप्पणी के रूप में (मैं प्रस्तावित समाधान की निर्मलता को पसंद करता हूं), यह कमांड फाइलनाम नहीं लिखेगा, लेकिन फाइलों की पहली पंक्तियां
लुरी

@ लूरी - सच में? उबंटू headसंस्करण में head (GNU coreutils) 8.5यह डिफ़ॉल्ट रूप से होगा। या शायद आप एक उपनाम का उपयोग कर रहे हैं head --quiet?
व्यवस्था करें

@ लूरी: इसने मेरे लिए फिल्नामें का भी उत्पादन किया।
डेविड वनिल

धिक्कार है ... यह अलियास (- वास्तव में, वास्तव में - के बजाय) था और मुझे पता नहीं क्यों। व्यवस्था के लिए एक में दो उत्तर;)
लुरी

12

सिर

आप विकल्प के headसाथ उपयोग करें -n

head -n 10 FILE

यह किसी फ़ाइल की पहली दस पंक्तियों को प्रिंट करेगा।

एक और उपयोगी भिन्नता होगी -n -NUMBER

head -n -10 FILE

यह एक फ़ाइल की सभी दस पंक्तियों को प्रिंट करेगा।

अपनी समस्या को हल करने के लिए और अपना वांछित आउटपुट प्राप्त करने के लिए आप निम्न कार्य कर सकते हैं।

basename * && head -n NUMBER *

या

basename *.FILETYPE && head -n NUMBER *.FILETYPE

यह आपको निम्नलिखित आउटपुट मिलेगा:

FILENAME
LINE ONE
LINE TWO
LINE THREE

4

यह वही करेगा जो आप चाहते हैं, उम्मीद है:

find . -print -exec head {} -n 3 \;

-printफ़ाइल नाम और बाकी (- से exec) प्रत्येक फ़ाइल की पहली 3 पंक्तियों को दिखाएगा

अपनी आवश्यकताओं के अनुसार संख्या बदलें ...


1

हेड आउटपुट में फ़ाइल नाम जोड़ने के लिए 'हेड -v' का उपयोग करें। तो 'हेड -वन 3 * .html' मुझे देता है:

# head -vn 3 *.html
==> WebInfo.html <==
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>

==> convert.html <==
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>

==> misc.html <==
<html>
<head>
<title>WIP</title>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.