awk文字处理
各位大神请不吝赐教!我有个文件有14列,其中第八列为1到39/40/100的数字循环。如果我把1-39/40/100标记为一个block,这种block会在每个文件中出现3-5次不等。如下所示: 12
3
4
5
...
38
39
1
2
3
4
5
...
38
39
40
1
2
3
4
5
...
38
39
40
我想让文档生成新的一列,来标记block,也就是说每次遇到1block加1,如下所示
11
21
31
41
51
...
38 1
39 1
12
22
32
42
52
...
382
392
402
1 3
2 3
3 3
4 3
5 3
...
383
393
403
我已经可以用awk找到第八列的最小值 awk -F, 'BEGIN{a=100}{if($8<0+a)}END{print a}' 可是怎么在第九列用awk生成block的标记啊?请各位大神不吝赐教,小女子感激不尽!!!
我自己写出来了,谢谢大家 如下,希望对大家有帮助
$ awk -F, 'BEGIN {block_id=0} $8 == 1 {block_id++} {print $1, $2, $3,
$4, $5, $6, $7, $8, block_id, $9, $10, $11, $12, $13, $14}'
页:
[1]