提取文件中指定模式匹配的字段內(nèi)容:
awk 'BEGIN{FS=OFS=","}{for(i=1;i<=NF;i++){if($i ~ /daytime=|sectime=|s1=|cid=/)lines=lines","$i;};print lines;lines=""}' $FILE
進階版蒋歌,使用awk的match函數(shù):
awk '{match($0,/(daytime=[^,]*?,)/,a);match($0,/(sectime=[^,]*?,)/,b);match($0,/(s1=[^,]*?,)/,c);match($0,/(cid[^}]*)?}/,d);print a[1],b[1],d[1],",",c[1]}' clickid_807c98_2017-09-17_23_conver.txt
超強版帅掘,直接生成csv格式可以使用Excel打開:
awk '{match($0,/daytime=([^,]*?,)/,a);match($0,/sectime=([^,]*?,)/,b);match($0,/s1=([^,]*?,)/,c);match($0,/cid=([^}]*)?}/,d);print a[1],b[1],d[1],",",c[1]}' clickid_807c98_2017-09-17_23_conver.txt