我确信有很多方法可以做到这一点:如何计算文本文件中的行数?
$ <cmd> file.txt
1020 lines
答案1
标准方法是 with wc
,它接受参数来指定它应该计数的内容(字节、字符、单词等);-l
用于线路:
$ wc -l file.txt
1020 file.txt
答案2
史蒂文·D 忘记了 GNU sed
:
sed -n '$=' file.txt
另外,如果您想要计数而不输出文件名并且您正在使用wc
:
wc -l < file.txt
只是为了它:
cat -n file.txt | tail -n 1 | cut -f1
答案3
正如迈克尔所说,wc -l
这是要走的路。但是,以防万一您莫名其妙地有bash
、perl
或 ,awk
但没有wc
,这里还有一些解决方案:
仅限 Bash
$ LINECT=0; while read -r LINE; do (( LINECT++ )); done < file.txt; echo $LINECT
Perl 解决方案
$ perl -lne 'END { print $. }' file.txt
以及可读性差得多的:
$ perl -lne '}{ print $.' file.txt
awk解决方案
$ awk 'END {print NR}' file.txt
答案4
您始终可以按如下方式使用该命令grep
:
grep -c "^" file.txt
它将计算 的所有实际行file.txt
,无论其最后一行末尾是否包含 LF 字符。