Tengo un archivo que usa |
como delimitador. Algunos de los registros tienen celdas vacías ||
(no hay nada dentro). Estoy intentando reemplazarlos |""|
con el siguiente comando sed:
sed -i 's/\|\|/\|""|/g' file
Pero el resultado no fue el que esperaba.
Fichero de entrada
A|B|C|D|||E
Salida deseada:
A|B|C|D|""|""|E
Tenga en cuenta que el principio y el final de los registros no tienen "|"
Cualquier ayuda sería apreciada.
Respuesta1
Simplemente repita la sustitución hasta que la salida no cambie:
$ echo 'A|B|C|D|||E' | sed ':X;s/||/|""|/g;tX'
A|B|C|D|""|""|E
dónde
:X
establece la etiquetaX
t X
ir a la etiquetaX
sis///
fue exitoso