Tengo un archivo que contiene varias líneas de xml. Me gustaría reemplazar ciertas partes del archivo. Algunas partes del archivo contienen comillas ( "
) que me gustaría reemplazar. He estado tratando de escapar de las comillas \
, pero no creo que esto funcione en función del resultado de mi archivo.
Aquí hay un ejemplo de uno de mis comandos sed:
sed -e "s/\"text\"/'text'/ig" file.xml > temp.tmp
¿Es así como escapas de comillas en un comando sed o estoy haciendo algo mal?
\"
es la forma correcta de escapar de las comillas en el comando sed?
"
. Pero su comando de shell utiliza una cadena entre comillas dobles y \"
es correcta allí. El sed
programa ve s/"text"/'text'/ig
como el argumento para -e
.
s/\"text\" /'text'/ig
¿Encontraría solo "text"
con el espacio después?
sed
es la herramienta adecuada para el trabajo, tal vez desee un analizador XML.
"text"
con'text'
. Por supuesto que no hará nada"othertext"
. Muestre algunas líneas de entrada, la salida no deseada correspondiente, y explique qué salida desea en su lugar.