我有一个生成为SQL查询输出的文件。我需要用空白替换文件中的空值,所以像 sed -e"s/null//g"
会起作用。sed替换特定的子字符串
但是,有一个'null /'形式的有效字符串(带有一个尾部正斜杠),不应该被替换。有没有办法在保留'null /'的情况下只替换'空'值?
我有一个生成为SQL查询输出的文件。我需要用空白替换文件中的空值,所以像 sed -e"s/null//g"
会起作用。sed替换特定的子字符串
但是,有一个'null /'形式的有效字符串(带有一个尾部正斜杠),不应该被替换。有没有办法在保留'null /'的情况下只替换'空'值?
sed的一行代码:
sed 's#null\([^/]\|$\)#\1#g' file
应您的要求工作。
它搜索模式:null and followed by a non-slash char (or EOL)
,
与followed non-slash char
取代。
因此,null/
将不会被触及。
如果'null'是作为行结束? – mouviciel
@mouviciel好点。添加'或EOL' – Kent
完美!谢谢 – Craig