- Para CentOS/RHEL: yum install sed
- Para Debian/Ubuntu: apt-get install sed
Sysadmit1
1Sysadmit
90Sysadmit82
HSysadmitH21
SYSADMIT1
1SYSADMIT
90SYSADMIT82
HSYSADMITH21
| : Pipe o tubería, en este caso la salida de find corresponderá a la entrada de sed.
[root@LINUX1 test]# pwd
/test
[root@LINUX1 test]# du -ah
4.0K ./new/test.txt
8.0K ./new
4.0K ./test.txt
16K .
[root@LINUX1 test]# cat ./new/test.txt
SYSADMIT1
1SYSADMIT
90SYSADMIT82
HSYSADMITH21
[root@LINUX1 test]# cat ./test.txt
SYSADMIT1
1SYSADMIT
90SYSADMIT82
HSYSADMITH21
[root@LINUX1 test]# find /test/ -name «*.txt» -print | xargs sed -i «s/SYSADMIT/–SYSADMIT–/g»
[root@LINUX1 test]# cat ./new/test.txt
–SYSADMIT–1
1–SYSADMIT–
90–SYSADMIT–82
H–SYSADMIT–H21
[root@LINUX1 test]# cat ./test.txt
–SYSADMIT–1
1–SYSADMIT–
90–SYSADMIT–82
H–SYSADMIT–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://sysadmit.com
por:
http://www.sysadmit.com/p/faq-libros.html
dentro del fichero: test.txt
Para ello, utilizaremos el caracter: «%»
[root@LINUX1 test]# cat test.txt
http://sysadmit.com
[root@LINUX1 test]# sed -i «s%http://sysadmit.com%http://www.sysadmit.com/p/faq-libros.html%g» «test.txt»
[root@LINUX1 test]# cat test.txt
http://www.sysadmit.com/p/faq-libros.html