LinuxParty
El comando "sed" está presente en todas las distribuciones Linux y es la herramienta preferida por los administradores de sistemas para manipular cadenas de texto.
Debería estar instalado en tu ordenador, pero no lo estuviera deberás hacer:
Para CentOS/FedoraRHEL:
yum install sed
Para Debian/Ubuntu:
apt-get install sed
Explicación sobre el funcionamiento general y ejemplos para reemplazar texto en archivos:
Si nunca has utilizado sed, su funcionamiento es muy simple:
Escribe este ejemplo en la consola:
[maria@localhost ~]$ echo "uno, dos, tres, cinco" | sed s/'cinco'/'cuatro'/g
Al ejecutarse "echo", pasa por la tubería hacia "sed", y este cambia la cadena "cinco" por "cuatro". Por pasar por la "tubería hacia...", se le llama a "|", tubería o (en inglés) pipe.
sed -i 's/texto-a-buscar/texto-a-reemplazar/g' "Fichero o directorio"
Ejemplo 1: Cambiamos el texto Linuxparty por LinuxParty del interior del fichero: test.txt
[root@localhost test]# cat test.txt Linuxparty1 1Linuxparty 90Linuxparty82 HLinuxpartyH21
[root@localhost test]# sed -i 's/Linuxparty/LinuxParty/g' "test.txt" [root@localhost test]# cat test.txt LinuxParty1 1LinuxParty 90LinuxParty82 HLinuxPartyH21
Ejemplo 2: Cambiamos el texto "LinuxParty" por "--LinuxParty--" en todos los ficheros *.txt a partir de la ruta /test/ de forma recursiva.
Para ello utilizaremos los siguientes comandos:
find: Que realizará una búsqueda en el contenido de todos los ficheros según el patrón definido.
xargs: Ejecutará un comando (en este caso sed) para cada resultado generado por el comando find.
| : Pipe o tubería, en este caso la salida de find corresponderá a la entrada de sed.
sed: Realizará el "buscar-reemplazar".
[root@localhost test]# pwd /test [root@localhost test]# du -ah 4.0K ./new/test.txt 8.0K ./new 4.0K ./test.txt 16K . [root@localhost test]# cat ./new/test.txt LinuxParty1 1LinuxParty 90LinuxParty82 HLinuxPartyH21 [root@localhost test]# cat ./test.txt LinuxParty1 1LinuxParty 90LinuxParty82 HLinuxPartyH21 [root@localhost test]# find /test/ -name "*.txt" -print | xargs sed -i "s/LinuxParty/--LinuxParty--/g" [root@localhost test]# cat ./new/test.txt --LinuxParty--1 1--LinuxParty-- 90--LinuxParty--82 H--LinuxParty--H21 [root@localhost test]# cat ./test.txt --LinuxParty--1 1--LinuxParty-- 90--LinuxParty--82 H--LinuxParty--H21
Ejemplo 3: Cambiamos una URL por otra del interior de un fichero de texto (test.txt).
El problema de las URLs es que contienen el carácter: "/".
El carácter "/", sed lo utiliza para definir el texto original y el texto a reemplazar.
En el siguiente ejemplo, reemplazaremos la URL:
http://linuxparty.es
por:
http://www.linuxparty.es/index.php
dentro del fichero: test.txt
Para ello, utilizaremos el caracter: "%"
[root@localhost test]# cat test.txt http://linuxparty.es [root@localhost test]# sed -i "s%http://linuxparty.es%http://www.linuxparty.es/index.phpl%g" "test.txt" [root@localhost test]# cat test.txt http://www.linuxparty.es/index.php
Si quieres saber más sobre "sed" y otras expresiones regulares:
Expresiones Regulares en Linux, que son y cómo entenderlas.
Y
Renombrar múltiples ficheros (quitar espacios, cambiar mayúsculas) a la vez en Linux
-
Linux
- ¿Por qué Torvalds eliminó a los encargados rusos del mantenimiento del núcleo de Linux?
- 10 cosas que siempre hago después de instalar Linux (y por qué tú también deberías hacerlo)
- 7 cosas que nunca hago después de instalar Linux (y por qué tú tampoco deberías)
- Detección de Intrusos: Snort, Base, MySQL, y Apache2 en Ubuntu Linux 7.10
- He utilizado Linux durante 30 años. Aquí hay 5 razones por las que nunca cambiaré a Windows o MacOS
- ¿Por qué no más personas usan Linux en el escritorio? Tengo una teoría que quizás no te guste.
- Los países occidentales ricos lideran la expansión mundial del petróleo y el gas
- Systemd 256.1 aborda la queja de que 'systemd-tmpfiles' podría eliminar inesperadamente su directorio /home
- Por qué un kernel Linux de distribución 'congelada' no es la mejor opción para la seguridad
- RebornOS es una versión hermosa y fácil de usar de Arch Linux con abundantes opciones de escritorio
- Linus Torvalds sobre el 'hilarante' bombo de la IA
- Cambiar la hora en Linux con Chrony
- Renombrar multiples archivos masivamente en Linux (quitar espacios, cambiar mayúsculas) a la vez en Linux
- Linux 6.9 será el primero en superar los 10 millones de objetos Git
- Zorin OS 17.1 lanzado con soporte mejorado para aplicaciones de Windows, edición educativa