sed用NULL替换空格

时间:2013-02-11 20:12:45

标签: linux bash sed

使用sed

  1. 如何用NULL替换\ N

  2. 如何更换空格||用NULL。

    |200|0||0|\N||^A|0|\N||
    
  3. 期望的输出

        |200|0|NULL|0|NULL|NULL|^A|0|NULL|NULL|
    

5 个答案:

答案 0 :(得分:2)

您需要稍加修改的this版本。这样的事情应该有效:

sed ':a; s:|\(\\N\)\?|:|NULL|:g; ta'

答案 1 :(得分:1)

我认为您正在寻找的命令可能被称为“tr”。尝试

tr \\n \\0

答案 2 :(得分:1)

cat file | sed 's/\\N/NULL/g' | awk -F\| '{for(i=2;i<=NF;i++){ if($i==""){ printf "|NULL"} else{  printf "|%s", $i}}; printf "|\n"}'

答案 3 :(得分:0)

使用awk

awk 'gsub("\\\\N","NULL");gsub("\\|\\|","|NULL|")' temp.txt

答案 4 :(得分:-1)

sed -i 's/ /NULL/g' temp.txt

这会将任何空格字符替换为 NULL