1
我有一个管道分隔符文件,其中我需要用空白替换NULL字符串。 文件非常大,大约9 GB,包含200万条记录,并有150列由管道分隔。用空白替换NULL字符串模式
PQR|NULL|NULL|NULL ABC|ABC NULL XYZ|XYZ NULL|NULL
所需的输出
PQR|||NULL ABC|ABC NULL XYZ|XYZ NULL|
我有一个管道分隔符文件,其中我需要用空白替换NULL字符串。 文件非常大,大约9 GB,包含200万条记录,并有150列由管道分隔。用空白替换NULL字符串模式
PQR|NULL|NULL|NULL ABC|ABC NULL XYZ|XYZ NULL|NULL
所需的输出
PQR|||NULL ABC|ABC NULL XYZ|XYZ NULL|
使用perl
您可以使用向前看符号此:
perl -pe 's/(?<=\|)NULL(?=\||$)//g' file
输出:
PQR|||NULL ABC|ABC NULL XYZ|XYZ NULL|
如果没有perl
不那么这个sed
也应该工作:
sed 's/|NULL|/||/g; s/|NULL\(|\|$\)/|\1/g' file
输出:
PQR|||NULL ABC|ABC NULL XYZ|XYZ NULL|
谢谢!!!!!!! – Saurabh