我有一个管道分隔符文件,我需要用空格替换NULL字符串。 文件非常庞大,约为9 GB,包含200万条记录,并且有150列由管道分隔。
PQR|NULL|NULL|NULL ABC|ABC NULL XYZ|XYZ NULL|NULL
所需的输出
PQR|||NULL ABC|ABC NULL XYZ|XYZ NULL|
答案 0 :(得分:3)
使用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|