1. 程式人生 > >Display certain line(s) from a text file in Linux.

Display certain line(s) from a text file in Linux.

statistic role n-1 mark art 2.7 box rtai ase

Purpose:

Display certain line or lines from a text file, such as :

Display the 1000th line from file message.log

or

Display the lines between 1000 and 1020 from file message.log

Solution:

Using sed:

sed -n ‘1000,1020p‘ message.log
sed -n ‘1000,1020p; 1021q‘ message.log #break after read out 1020th line.

Using awk:

awk ‘{if ((NR >= 1000) && (NR <= 1020)) print $0}‘ message.log

Using cat && grep:

cat -n message.log | grep -A 20 ‘^ *1000‘

Using nl && grep:

nl message.log | grep -A 20 ‘^ *1000‘

Using tail && head:

tail -n +1000 message.log | head 20
head -n 1000 message.log | tail +20

Ref:

  1. http://serverfault.com/questions/133692/how-to-display-certain-lines-from-a-text-file-in-linux

Display certain line(s) from a text file in Linux.