[Leetcode] 195. Tenth Line

Problem
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

Wrong Answer

#Remember cases that there are less than 10 lines.

head -10 file.txt | tail -1

Correct Answer

sed -n '10p' file.txt

Other Answer

cnt=0
while read line && [ $cnt -le 10 ]; do
    let 'cnt = cnt + 1'
    if [ $cnt -eq 10 ]; then
    echo $line
    exit 0
    fi
done < file.txt
awk 'FNR == 10 {print }' file.txt
# OR
awk 'NR == 10' file.txt
tail -n+10 file.txt|head -1

Reference
http://www.cnblogs.com/fjping0606/p/4997643.html

sed文本流行处理
https://fsp1yjl.github.io/2017/04/25/sed%E6%96%87%E6%9C%AC%E6%B5%81%E8%A1%8C%E5%A4%84%E7%90%86/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值