以下是我的代码,它以编号格式打印出我的文字:
awk '{printf("%s \"%d\" \n" ,$0 , NR)}' mapcycle_surf1.txt
输出:
"surf_004_final1" "1"
"surf_1day" "2"
"surf_2012_beta12" "3"
"surf_3" "4"
如何从0开始编号计数而不是1,如下所示:
"surf_004_final1" "0"
"surf_1day" "1"
"surf_2012_beta12" "2"
"surf_3" "3"
答案 0 :(得分:2)
你可以print i++
,见下面的测试:
kent$ seq 7|awk '{print i++}'
0
1
2
3
4
5
6
您的陈述,您可以尝试:
awk '{printf("%s \"%d\" \n" ,$0 , i++)}' input
答案 1 :(得分:1)
NR-1
是解决方案
awk '{printf("%s \"%d\" \n" ,$0 , NR-1)}' mapcycle_surf1.txt
感谢Tom Fenech的回答。
感谢fedorqui
,这是更好的答案awk '{print $0, NR-1}' mapcycle_surf1.txt