Necesito sustituir algo de texto dentro de un archivo de texto con un reemplazo. Por lo general, haría algo como
sed -i 's/text/replacement/g' path/to/the/file
El problema es que tanto text
y replacement
son cadenas complejas que contienen guiones, barras, blackslashes, citas y así sucesivamente. Si escapo, todos los personajes necesarios dentro de text
la cosa se vuelven rápidamente ilegibles. Por otro lado, no necesito el poder de las expresiones regulares: solo necesito sustituir el texto literalmente.
¿Hay alguna forma de hacer una sustitución de texto sin usar expresiones regulares con algún comando bash?
Sería bastante trivial escribir un guión que haga esto, pero creo que ya debería existir algo.
bash
siempre se envían con Microsoft Word? ;) No, solo bromeo. Sin embargo, el OP puede querer hacer esto en una máquina remota o para un lote de archivos.
sed
, lo que probablemente sea un esfuerzo inútil considerando todos los interruptores y las diferencias de plataforma.
find and replace all