Write a bash script to print a particular line from a file
Last Updated :
26 Sep, 2017
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
- awk :
$>awk '{if(NR==LINE_NUMBER) print $0}' file.txt
- sed :
$>sed -n LINE_NUMBERp file.txt
- 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”.
- awk :
$>awk '{if(NR==4) print $0}' file.txt
- sed :
$>sed -n 4p file.txt
- 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 ‘&’.
- awk:
$>awk '{if(NR==4) print $0}' file1.txt & awk '{if(NR==4) print $0}' file2.txt
- sed:
$>sed -n 4p file1.txt & sed -n 4p file2.txt
- head:
$>head -n 4 file1.txt | tail -n + 4 & head -n 4 file2.txt | tail -n + 4
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...