Diferencia entre revisiones de «Sustituir texto en multiples ficheros»

De Recursos Educativos
Ir a la navegación Ir a la búsqueda
(Página creada con «Queremos sustituir <code>old-word</code> por <code>new-word</code> en todos los ficheros <code>.txt</code> y crear un fichero de backup <code>.bak</code> para cada uno de l...»)
 
mSin resumen de edición
 
(No se muestra una edición intermedia del mismo usuario)
Línea 10: Línea 10:
Obviamente se pueden usar otras expresiones regulares mas allá de la simple sustitución. Ojo que <code>sed</code> y <code>perl</code> soportan expresiones regulares de forma ligeramente diferente.
Obviamente se pueden usar otras expresiones regulares mas allá de la simple sustitución. Ojo que <code>sed</code> y <code>perl</code> soportan expresiones regulares de forma ligeramente diferente.


Otra combinación potente es encadenar este comando con <code>find<code> y <code>xargs<code>.
Otra combinación potente es encadenar este comando con <code>find</code> y <code>xargs</code>.


[[Category:Tips]]
[[Category:Tips]]
[[Category:Tecnología]]
[[Category:Tecnologia]]
[[Category:Linux]]
[[Category:Linux]]

Revisión actual - 10:37 4 dic 2018

Queremos sustituir old-word por new-word en todos los ficheros .txt y crear un fichero de backup .bak para cada uno de los ficheros que se alteren.

sed -i.bak 's/old-word/new-word/g' *.txt

Otro método que haría lo mismo:


perl -p -i.bak -e 's/old-word/new-word/g' *.txt

Obviamente se pueden usar otras expresiones regulares mas allá de la simple sustitución. Ojo que sed y perl soportan expresiones regulares de forma ligeramente diferente.

Otra combinación potente es encadenar este comando con find y xargs.