PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Linux
[问题] 这样的资料要怎么样用awk处理
楼主:
xyzman
(.........)
2015-04-13 19:40:48
资料格式:
Dog:12345
Cat:67890
Fish:13579
Dog:abcde
Cat:fghijk
Fish:lmnop
......
......
我需要将资料重组成
(12345,67890,13579)
(abcde,fghijk,lmnop)
我的想法是将每个区块资料
match关键字(dog/cat/fish)并以:为分隔符号,取字段2存入变量1
其他以此类推,最后再用print重组字串
但怎么测试都无法成功,请问这样的方向正确吗?
还是有其他方法?
作者:
cybelia
(@@)
2015-04-13 21:38:00
取字段2存入变量1是虾米@@?
作者: nullspace
2015-04-13 21:55:00
差不多是这样,如果资料出现顺序一定是dog,cat,fish的话awk -F : '{n[$1]=$2}/^Fish/{print "("n["Dog"]","n["Cat"]","n["Fish"]")"}' xxx.txt如果是dog/cat/fish夹杂的话就多加一些检查
楼主:
xyzman
(.........)
2015-04-13 22:18:00
太强了!真的是我要的格式,看了许久完全看不懂为什么!!
作者: nullspace
2015-04-13 22:33:00
awk的阵列是关联式阵列,可以用字串当index用:当分隔符号,n阵列索引$1的值设为字串$2如果资料出现顺序固定为狗猫鱼的话,遇到鱼就把值印出
楼主:
xyzman
(.........)
2015-04-13 22:54:00
非常感谢你的帮忙跟讲解,这样就清楚这个用法了!
作者:
lc85301
(pomelocandy)
2015-04-15 11:00:00
我遇到这个大概会用python 处理=w=
继续阅读
[心得] youtube html5 1080p的firefox设定
Adama
[问题] suse studio 制作开机usb
ireullin
[新闻] Linux 4.0低调大改版,核心更新从此免开
Kitakami
[问题] Raspberry Pi 2 Type B SD卡的复制方法
togepy
[问题] fdisk 时出现错误
adeliu
[问题] linux 编译核心问题
westron
Fw: [请问] linux vlc等播放器拨影片分成一半
newwords
Re: [问题] 编译完旧版kernel重开机一片黑
ComputerGod
[问题] 高阶显卡效能可以全开?
a07051226
[问题] 请问有办法纪录读取档案的帐号和IP吗?
LIAR
Links
booklink
Contact Us: admin [ a t ] ucptt.com