Ho un file che contiene più righe di XML. Vorrei sostituire alcune parti del file. Alcune parti del file contengono virgolette ( ") che vorrei sostituire. Ho cercato di sfuggire alle virgolette con \, ma non credo che funzioni sulla base del risultato del mio file.
Ecco un esempio di uno dei miei comandi sed:
sed -e "s/\"text\"/'text'/ig" file.xml > temp.tmp
È così che sfuggite alle virgolette in un comando sed o sto facendo qualcosa di sbagliato?
\"è il modo corretto di sfuggire alle virgolette nel comando sed?
". Ma il tuo comando shell usa una stringa tra virgolette doppie ed \"è corretto lì. Il sedprogramma vede s/"text"/'text'/igcome argomento -e.
s/\"text\" /'text'/igtroverà solo "text" con lo spazio dopo di esso?
sedsia lo strumento giusto per il lavoro, forse vuoi un parser XML.
"text"con'text'. Ovviamente non farà nulla per"othertext". Mostra alcune righe di input, l'output indesiderato corrispondente e spiega invece quale output desideri.