195. Tenth Line
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 10Your script should output the tenth line, which is:
Line 10
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. 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.
awk依旧很强大,模式块中next可以实现跳过功能,如下,只输出第10行,如果有的话:
awk 'NR!=10{next}{print}' file.txt
很神奇的是,10后面多个分号结果就刚好相反,如下,输出10行除外的行,如果有的话:
awk 'NR!=10;{next}{print}' file.txt
哼,其实其实,“;”把语句截断啦,上面相当于,为什么呢,看看下面:
然后呢,那么这题简化:
哇,还是很神奇,其实还有:
应该很多种方法都可以,就不去一一想了,太灵活。