我想知道如何获取文件一行中的字节数。
我知道我可以用来wc -l
获取文件中的行数,并wc -c
获取文件中的总字节数。然而,我想要的是获取文件的一行中的字节数。
我怎样才能做到这一点?
答案1
sed -n 10p myfile | wc -c
将计算第十行中的字节myfile
(包括换行符/换行符)。
一个可读性稍差的变体,
sed -n "10{p;q;}" myfile | wc -c
(或sed '10!d;q'
或sed '10q;d'
) 将在第十行之后停止读取文件,这对于较长的文件(或流)来说会很有趣。 (谢谢蒂姆·肯尼迪和彼得·科德斯进行讨论。)
对不同的文本行提取方式进行了性能比较在大型文件上将 X 行链接到 Y 行。
答案2
尝试这个:
line=10
tail -n "+$line" myfile | head -n 1 | wc -c
设置line
为您需要计数的行号。
答案3
使用更简单一点awk
:
awk 'NR==10{print length($0)}' myfile