我有几个表(制表符分隔),其中第一列如下:
MONTH
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
我想用实际月份值替换这些值,如下所示:
MONTH
1
2
3
4
5
6
7
8
9
10
11
12
答案1
使用awk
“line number-1”替换第一个字段将适用于您的示例案例
$ awk 'BEGIN {FS="\t" ; OFS="\t" } NR>1 { $1=NR-1} { print}'
例如
$ cat x
MONTH DATA
0.00 something
0.00 data
0.00 here
0.00 blah
0.00 blah
0.00 blah
0.00 blah
0.00 blah
0.00 blah
0.00 blah
0.00 blah
0.00 blah
$ awk 'BEGIN {FS="\t" ; OFS="\t" } NR>1 { $1=NR-1} { print}' x
MONTH DATA
1 something
2 data
3 here
4 blah
5 blah
6 blah
7 blah
8 blah
9 blah
10 blah
11 blah
12 blah