Open In App

Write a bash script to print a particular line from a file

Last Updated : 26 Sep, 2017
Improve
Improve
Like Article
Like
Save
Share
Report


Given a file, name file.txt, out task is to write a bash script which print particular line from a file.

Content of file.txt:

I
love
reading
articles
at
geeks
for
geeks

Syntax in Bash Script

  1. awk :
    $>awk '{if(NR==LINE_NUMBER) print $0}' file.txt
  2. sed :
    $>sed -n LINE_NUMBERp file.txt
  3. head :
    $>head -n LINE_NUMBER file.txt | tail -n + LINE_NUMBER
    Here LINE_NUMBER is, 
    which line number you want to print

    Examples:

    Print a line from single file

    To print 4th line from the file then we will run following commands. The output of following lines will be “articles”.

    1. awk :
      $>awk '{if(NR==4) print $0}' file.txt
    2. sed :
      $>sed -n 4p file.txt 
    3. head :
      $>head -n 4 file.txt | tail -n + 4

    Print a line from multiple files

    Suppose we have two files, file1.txt and file2.txt, We can use the above commands and print particular line from multiple files by ‘&’.

    1. awk:
      $>awk '{if(NR==4) print $0}' file1.txt & awk '{if(NR==4) print $0}' file2.txt
    2. sed:
      $>sed -n 4p file1.txt & sed -n 4p file2.txt
    3. head:
      $>head -n 4 file1.txt | tail -n + 4 & head -n 4 file2.txt | tail -n + 4

    Like Article
    Suggest improvement
    Previous
    Next
    Share your thoughts in the comments

Similar Reads