2017-03-08 57 views
0

假设我有以下形式转换块地址转换成csv文件

Name1 
Address 1.1 
Address 1.2 
Pincode 1 

Name2 
Address 2.1 
Address 2.2 
Pincode 2 

的文本文件是否有写在awk或者sed脚本它创建了以下形式的csv文件的方式

Name1;Address 1.1;Address 1.2;Pincode1 
Name2;Address 2.1;Address 2.2;Pincode2 

任何帮助将不胜感激。我有一个这样的地址的大文本文件,我想从中创建一个数据库。

+0

有时可能会地址1.3中的一些地址,这使得它有一个额外的线在矿井地址块 – dongrugose

回答

2

用awk惯用的设计/预期:

$ awk -v RS= -F'\n' -v OFS=';' '{$1=$1}1' file 
Name1;Address 1.1;Address 1.2;Pincode 1 
Name2;Address 2.1;Address 2.2;Pincode 2 
2

给这个只有一行一试:

awk -v RS="" 'gsub(/\n/,";")' file 
Name1;Address 1.1;Address 1.2;Pincode 1 
Name2;Address 2.1;Address 2.2;Pincode 2 
0

你可以试试这个 -

sed '/^$/d' f | awk -v FS=";" ' {ORS=(NR%4==0?RS:FS)}1' 
Name1;Address 1.1;Address 1.2;Pincode 1 
Name2;Address 2.1;Address 2.2;Pincode 2 

如果没有空行,我们可以删除sed命令。