How would you print just the 10th line of a file?
For example, assume that file.txt has the following content:
Line 1
Line 2
Line 3
Line 4
Line 5
Line 6
Line 7
Line 8
Line 9
Line 10
Your script should output the tenth line, which is: Line 10
[show hint]
Hint:
1. If the file contains less than 10 lines, what should you output?
2. There’s at least three different solutions. Try to explore all possibilities.
分析:
1. awk 的用法: awk ‘条件 {动作}’ filename
awk ‘NR==10’ file.txt
其中,NR是awk的内置变量,表示当前的记录数,即第几行
2. sed 的用法: sed [-n] [动作]
sed -n ‘10p’ file.txt
还可以, cat file.txt | sed -n ‘10p’
其中,-n表示安静模式,只显示sed处理的那一行, ‘10p’表示打印第十行