Sas*_*Sas 1 bash sed shell-script
我有一个|用作分隔符的文件。一些记录有空单元格||(里面什么都没有)。我试图|""|用以下 sed 命令替换它们:
sed -i 's/\|\|/\|""|/g' file
Run Code Online (Sandbox Code Playgroud)
但结果并不是我所期望的。
输入文件
A|B|C|D|||E
Run Code Online (Sandbox Code Playgroud)
期望的输出:
A|B|C|D|""|""|E
Run Code Online (Sandbox Code Playgroud)
注意记录的开头和结尾没有“|”
任何帮助,将不胜感激。
只需重复替换,直到输出不变:
$ echo 'A|B|C|D|||E' | sed ':X;s/||/|""|/g;tX'
A|B|C|D|""|""|E
Run Code Online (Sandbox Code Playgroud)
在哪里
:X 设置标签 Xt XX如果s///成功,则转到标签