我有一个需要使用awk处理的文本文件.
"5","1211274723","0","D","2"
"1","1211292921","0","A","2"
"5","1211295793","0","A","2"
"5","1211310146","0","A","2"
"5","1211310310","0","A","2"
"4","1211315271","0","A","2"
"5","1211318203","0","D","2"
"2","1211323658","0","A","2"
"5","1211329224","0","A","2"
"5","1211330064","0","A","2"
# cat testme.csv | awk -F',' '{print "set", $2, $3}'
set "1211274723" "0"
set "1211292921" "0"
set "1211295793" "0"
set "1211310146" "0"
set "1211310310" "0"
set "1211315271" "0"
set "1211318203" "0"
set "1211323658" "0"
set "1211329224" "0"
set "1211330064" "0"
Run Code Online (Sandbox Code Playgroud)
唯一的问题是我不知道如何删除电话号码周围的报价.所以我的最终输出看起来像这样......
set 1211274723 "0"
set 1211292921 "0"
set 1211295793 "0"
set 1211310146 "0"
set 1211310310 "0"
set 1211315271 "0"
set 1211318203 "0"
set 1211323658 "0"
set 1211329224 "0"
set 1211330064 "0"
Run Code Online (Sandbox Code Playgroud)
anu*_*ava 42
你可以使用gsub函数:
awk -F',' '{gsub(/"/, "", $2); print "set", $2, $3}' testme.csv
set 1211274723 "0"
set 1211292921 "0"
set 1211295793 "0"
set 1211310146 "0"
set 1211310310 "0"
set 1211315271 "0"
set 1211318203 "0"
set 1211323658 "0"
set 1211329224 "0"
set 1211330064 "0"
Run Code Online (Sandbox Code Playgroud)
per*_*eal 10
使用双引号作为字段分隔符;
awk -F'"' '{print "set", $4, "\""$6"\""}' testme.csv
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
28870 次 |
| 最近记录: |