全部,
我希望使用以下行解析csv文件
00000000-0000-0265-2510-017132647704,5690OD64_0W24zjsK-5GLmwjntrVyLDZhrmS,1,11/1/2014 7:29:02 AM,23435830,11179745,868,360655,69844,64637,43755,,,122.111.9.107,36,28389,-1,11677,3166,,0,11,,Apple iPad,,-1,-1,MM_CLD_Standard_Agency_43755_Daily_141101_00.csv
我需要使用两个分隔符
来解析文件"," & "_"
下划线出现在第二列和最后一列。目前我正在使用awk解析文件,如下所示,但是当你注意到col2中下划线的出现导致文件被不合需要地解析。我想知道如何在col2中转义下划线,以便我从最终列中拉出的字符串不受影响
awk -F "," 'BEGIN {OFS=","} {$23="";print $4,$3,$2,$6,FILENAME}' $i|tail -n +2|awk -F ",|_" 'BEGIN {OFS=","} {print $1,$2,$3,$4,$10}'
所需的输出为
11/1/2014 7:29:02 AM,1,5690OD64_0W24zjsK-5GLmwjntrVyLDZhrmS,11179745,141101
非常感谢,
答案 0 :(得分:1)
awk -F, -v OFS=, '{n=split($NF, a, /_/); print $4, $3, $2, $6, a[n-1]}' <<END
x,5690OD64_0W24zjsK-5GLmwjntrVyLDZhrmS,1,11/1/2014 7:29:02 AM,y,11179745,z,...,MM_CLD_Standard_Agency_43755_Daily_141101_00.csv
END
11/1/2014 7:29:02 AM,1,5690OD64_0W24zjsK-5GLmwjntrVyLDZhrmS,11179745,141101