Print line numbers starting at zero using awk
有人能告诉我如何用awk打印包括零在内的行号吗?
这是我的输入文件stackfile2.txt
当我运行下面的awk命令时,我会得到实际的输出.txt
1 | awk '{print NR,$0}' stackfile2.txt | tr"",","> actual_output.txt |
而我期望的输出是file.txt
如何打印以零(0)开头的行号?
nr从1开始,所以使用
1 | awk '{print NR-1"," $0}' |
使用AWK。
我从0开始,
1 | awk '{print i++"," $0}' file |
除awk之外的另一个选项是nl,它允许选项
在UNIX环境中,这可以作为
1 | cat <infile> | ...other stuff... | nl -v 0 -n rz |
或者简单地
1 | nl -v 0 -n rz <infile> |
例子:
1 2 3 4 | echo"Here are some words"> words.txt |
出:
1 2 3 4 | 000000 Here 000001 are 000002 some 000003 words |
如果Perl是一个选项,您可以尝试以下操作:
1 | perl -ne 'printf"%s,$_" , $.-1' file |