LinuxParty
NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.
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
- La razón por la que todavía no ha llegado el año del Escritorio Linux, tiene que ver con su variedad
- Cómo usar el comando grep en Linux / UNIX con ejemplos prácticos
- Compartir y enviar archivos / ficheros en red local entre Windows, Linux, Mac, Android e iPhone
- Cómo mostrar asteriscos al escribir la contraseña de Sudo en Linux
- UNetbootin: arranca cualquier distribución de Linux desde tu pendrive / memoria USBU con Netboot
- Cómo limitar el uso del ancho de banda de la red en Linux usando Trickle
- Corrija fácilmente un error tipográfico del comando anterior usando el símbolo carater (^)
- Zorin OS Lite 16.1: El escritorio Linux definitivo remplazo de Windows con su apariencia
- Las 10 distribuciones de Linux más utilizadas de todos los tiempos
- Woof: Compartir archivos/ficheros fácilmente en su LAN o red local, sin Samba, entre Linux, Mac, Windows, Android e iPhone
- ReiserFS propuesto para ser eliminado de Linux en 2022
- Controlando nuestro disco duro con Smartmontools, smartctl para: Unreadable sectors (sectores ilegibles)
- Comprobar el estado de salud del disco duro con Smartmontools, smartctl buscando sectores ilegibles
- Woof: intercambie fácilmente archivos a través de una red local en Linux
- Cómo instalar la herramienta de monitoreo del sistema Gtop en Linux