Print just the last line of a file?

2019-01-17 06:00发布

问题:

How to print just the last line of a file?

回答1:

END{print}

should do it. Thanks to Ventero who was too lazy to submit this answer.



回答2:

Is it a must to use awk for this? Why not just use tail -n 1 myFile ?



回答3:

Use the right tool for the job. Since you want to get the last line of a file, tail is the appropriate tool for the job, especially if you have a large file. Tail's file processing algorithm is more efficient in this case.

tail -n 1 file

If you really want to use awk,

awk 'END{print}' file

EDIT : tail -1 file deprecated



回答4:

Find out the last line of a file:

  1. Using sed (stream editor): sed -n '$p' fileName

  2. Using tail: tail -1 fileName

  3. using awk: awk 'END { print }' fileName



回答5:

You can as well achieve this using sed. However, I personally recommend using tail or awk.

Anyways, if you wish to do by sed, here are two ways:

Method 1:

sed '$!d' filename

Method2:

sed -n '$p' filename

Here, filename is the name of the file that has data to be analysed.