Buscar y reemplazar texto en todos los archivos dentro de un directorio y todos los subdirectorios – TIP Linux

Si buscabas como reemplazar texto dentro de varios archivos en una sola linea de comando, has llegado a la web correcta. Muchas veces tenemos que buscar o hacer cambios a un texto determinado y para empezar no sabemos ni en cual archivo, documento o directorio puede estar.

Digamos que le cambiamos la dirección IP al servidor, o cambiamos de servidor web y es necesario hacer los cambios en todos los archivos de configuracion y los donde aparezca la IP del servidor anterior.

Para no estar buscando durante horas entre todos los archivos de nuestro servidor, les escribo aqui los distintos tips para reemplazar strings alfanumericos en linux.

  • Para reemplazar un texto o string cada vez que aparezca en los archivos:

~# find /path/directorio «*.txt» | xargs perl -pi -e ‘s/texto/reemplazo/g’

  • Para reemplazar la primera vez que aparezca el texto:

~# find /path/directorio «*.txt» | xargs perl -pi -e ‘s/texto/reemplazo/’

  • Para reemplazar todos los archivos dentro de un directorio:

~# for arg in `ls -C1`; do perl -pi -e ‘s/texto/reemplazo/g’; done;

Existe infinidad de combinaciones posibles utilizando el shell de la linea de comandos. Tomemos como ejemplo la primera busqueda:

~# for arg in `find /your/home/dir -name «*.txt»` ; do perl -pi -e ‘s/texto/reemplazo/g’ $arg; done;

Muchas veces solamente es necesario buscar un path o una cadena dentro de multitud de ficheros sobre todo en las migraciones, para ello usaremos los siguientes comandos:

grep Busca cadenas dentro de ficheros»» -n señala el nº de la linea donde está la cadena

Ejemplo: grep -n micadena *

Busqueda recursiva de una cadena dentro de multitud de ficheros:

grep -n micadena * -R

Curso de Administración de Servidores en Ubuntu PDF

pdf_ubuntu

Este curso de Administración de Servidores en Ubuntu en formato PDF les será útil sobre todo a quienes están dando sus primeros pasos en el mundo del software libre. El objetivo principal es proporcionar una serie de explicaciones sencillas y prácticas, de tal modo que cualquiera, sin grandes conocimientos de informática, pueda convertirse en usuario de GNU/Linux y aprovechar todas las ventajas que ofrecen los sistemas libres. No obstante si el vocabulario le resulta especialmente complicado puede consultar nuestro glosario y si la explicaciones son demasiado simples, puede ampliarlas con el conjunto de enlaces que le iremos sugiriendo. Casi toda la información aquí contenida se encuentra dispersa en Internet, por nuestra parte hemos procurado sintetizarla y estructurarla de modo que cuando necesite saber algo pueda tenerlo siempre a mano.

Continuar leyendo «Curso de Administración de Servidores en Ubuntu PDF»

Magazine Hacker Highschool [PDF]

//i232.photobucket.com/albums/ee320/MnoX/hackerhighschool9.jpg

Aqui os dejo este pack light (para noobs)con las 13 ediciones del magazine Hacker Highschool en formato PDF, los cuales abordan los siguientes temas:

01. TOC&Glossary
02. Ser Un Hacker
03. Windows y Linux
04. Puertos y Protocolos
05. Servicios y Conexiones
06. Identificacion de Sistemas
07. Malware
08. Attack Analysis
09. Digital Forensics
10. Seguridad Email
11. Web Security and Privacy
12. Passwords
13. Legalidad y Etica en Internet

Continuar leyendo «Magazine Hacker Highschool [PDF]»

Enviar email cuando el usuario root se conecta por SSH

Una de las configuraciones que más utilizan los administradores de sistemas Linux es la configuración de envío de mail al administrador cuando se detecta un acceso del usuario root al sistema por medio de SSH.

Para ello lo primero que debemos hacer es encontrar un archivo de sistema en entornos Linux que sepamos se ejecuta cada vez que un usuario se conecta, es decir, cada vez que un usuario hace login. Como muchos de vosotros sabréis, ese archivo de sistema en Linux es el archivo oculto .bash_profile. Este fichero es leído y todos los comandos incluidos en él ejecutados cada vez que un usuario se conecta al sistema.

En este fichero podemos indicarle al sistema que cada vez que un usuario se conecte efectúe cierto número de acciones, entre ellas la que queremos configurar en esta ocasión, el envío del mail al administrador.

Como queremos que se envíe cuando se conecte el usuario root, debemos de modificar el fichero .bash_profile correspondiente. Para ello nos conectamos como root y nos dirigimos a al directorio root. Allí editamos .bash_profile con nuestro editor de texto preferido.

En este caso utilizaré nano:

Continuar leyendo «Enviar email cuando el usuario root se conecta por SSH»