- 论坛徽章:
- 18
|
谢谢您的答复。
我给出的程序和结果只是我还在修改的脚本,并没有实现我希望的输出。
您给出的输出是我希望得到的结果,但是busybox的awk好像不支持数组,所以您的程序在busybox下的输出是不正确的:- root@jinx:/tmp# data="AAAA:12K3456[1] BB:2455F63 CCC:9452T045[3] D:458J83[2] FF:45245K39"
- root@jinx:/tmp# echo $data|awk '{for(i=0;i++<NF;){match($i,/([^:]+):([^[]+)\[?([^]]*)/,a);if(a[3]=="")a[3]=-1;printf "Object:%s\tCod
- e:%s\tField:%s\n",a[1],a[2],a[3]}}'
- Object: Code: Field:-1
- Object: Code: Field:-1
- Object: Code: Field:-1
- Object: Code: Field:-1
- Object: Code: Field:-1
- root@jinx:/tmp#
复制代码 而且我还要在我的脚本中对$obj,$code及$field做进一步的处理,而不是直接print出来就完事,所以希望能在我的脚本上进行修改,只要让三个变量得到正确的赋值就好。谢谢!
回复 2# yestreenstars
|
|