Bash 如何使用sed计算文件中的非空行数?
如何通过sed查找文件中的行数 (需要忽略空格和空行) 比如说 如果我有139行的文件(行只能包含一个字符) 那么sed应该返回139 莉迪亚你可以试试:Bash 如何使用sed计算文件中的非空行数?,bash,shell,sed,Bash,Shell,Sed,如何通过sed查找文件中的行数 (需要忽略空格和空行) 比如说 如果我有139行的文件(行只能包含一个字符) 那么sed应该返回139 莉迪亚你可以试试: sed -n '/[^[:space:]]/p' filename | wc -l 这里sed只打印那些至少有一个非空格字符的行,并且wc统计这些行。使用nawk代替sed nawk 'NF{c++}END{print "total: "c}' file 这是为grep而不是sed的作业: <myfile grep -c '[^[:
sed -n '/[^[:space:]]/p' filename | wc -l
这里
sed
只打印那些至少有一个非空格字符的行,并且wc
统计这些行。使用nawk代替sed
nawk 'NF{c++}END{print "total: "c}' file
这是为
grep
而不是sed
的作业:
<myfile grep -c '[^[:space:]]'
在这里,sed
在从开始到结束删除所有包含0或更多空格的行后打印这些行wc-l
用于计算这些行的数量。使用Perl一行程序:
perl -lne '$count++ if /\S/; END { print int $count }' input.file
说要做:sed-n'$='
@Seth:那只是wc-l
,它不会像OP所希望的那样忽略空行。@codaddict-我自己会wc-l
;我不是一个被解雇的人。
perl -lne '$count++ if /\S/; END { print int $count }' input.file