195 Tenth line
问题描述
Given a text file file.txt, print just the 10th line of the file.
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
Note:
- If the file contains less than 10 lines, what should you output?
- There's at least three different solutions. Try to explore all possibilities.
解决方案
- 使用head 和 tail
tail -n+10 file.txt | head -1
- 使用sed
sed '10p' file.txt
- 使用awk
awk 'NR==10' file.txt
- 使用脚本
no=0
while IFS= read -r line
do
((no=$no+1))
if [[ $no -eq 10 ]]
then
echo $line
break
fi
done < "file.txt"