0

我想计算一个文件中有多少行具有定义的长度来显示。

在正常情况下示例:

文件:

2423
546
74868

cat file|wc -l将显示结果:3 .

但我想定义数字的长度,例如有 10 个符号并显示:

0000000003

如果有 100 行是:

0000000100
4

3 回答 3

4
perl -ne '}{ printf("%010d\n", $.)' file

参考 perl 中的计数行

于 2014-11-14T12:43:15.417 回答
4

我认为你想要这样的东西:

printf '%010d' $(wc -l < file)

格式说明符%010d表示打印 10 位数字,用前导 0 填充。

作为奖励,在使用<通过标准输入传递文件的内容时,我为您节省了“无用的使用cat”:)

如果我正确理解您的评论,您可以执行以下操作:

printf 'Count: %010d' $(( $(wc -l < file) + 1 ))

在这里,我在格式说明符中添加了一些额外的文本,并使用算术上下文$(( ))将行数的值加一。

于 2014-11-14T12:36:03.717 回答
1

awk

awk 'END{printf("%010d\n",NR)}' file
于 2014-11-14T13:10:42.970 回答