- 论坛徽章:
- 0
|
本帖最后由 dickgz1z 于 2010-07-01 13:35 编辑
一种语言如果具有多索引数组的特性就足以证明它的强大,无可否认awk就是这样的一种语言。- cat infile | awk '{
- a[$1,$2]=$0
- }
- END{
- for( i in a )
- {
- print i">>>>"a[i]
- }
- }'
复制代码 infile:
1 2 3 4 5
11 2 4 5 6
1 12 5 6 7
1 3 4 5 6
1 3 5 6 7
1 3 6 7 8
输出:
112>>>>11 2 4 5 6
112>>>>1 12 5 6 7
12>>>>1 2 3 4 5
13>>>>1 3 6 7 8
如果将索引1和索引2在for循环中分别取出,又应该怎么写呢?
P.S.下标不就是索引么,呵呵
谢谢 lkk2003rty。用这样的方法就可以了:- cat infile | awk '{
- a[$1,$2]=$0
- }
- END{
- for( i in a )
- {
- split(i,k,SUBSEP);
- i1=k[1];
- i2=k[2];
- print i1"\t"i2">>>>"a[i]
- }
- }'
复制代码 |
|