Un naúfrago en una isla


Comando en linux para reemplazar texto

Reemplazar un texto por otro en varios ficheros a la vez se puede convertir en algo tedioso, sobre todo si esos ficheros no están ubicados en el mismo directorio, o incluso puede darse el caso de que no sepamos que ficheros necesitan ser reemplazados. Para ello tenemos este pequeña sentencia que nos ayudará a hacerlo del tirón :)

find . -name  "*.txt" -exec sed -i 's/TEXTO1/TEXTO2/g' {} \;

Este comando lo que hará es buscar todos los ficheros con extensión txt en el directorio y subdirectorios desde donde estamos lanzando el comando, y reemplazará en todos los ficheros que encuentre la palabra TEXTO1 por la palabra TEXTO2.

En el caso de que queramos cambiar cualquier fichero sin importar la extensión tan solo tenemos que sustituir -name  ”*.txt” por -type f

find . -type f -exec sed -i 's/TEXTO1/TEXTO2/g' {} \;

Nunca está de más recordar que es una sentencia bastante peligrosa ya que no hay marcha atrás. Hay que estar muy seguro de lo que queremos sustituir y donde queremos sustituirlo ;)

  • Share/Bookmark

Un par de sentencias útiles en linux

Para encontrar texto en ficheros (búsqueda recursiva):

find . -name "*.php" -exec grep -i -H -n 'texto_a_buscar' {} \;

Si queremos buscar en cualquier fichero y no solamente en los que tengan extensión PHP, tan sólo tenemos que sustituir “-name *.php” por “-type d”

Para cambiar los permisos recursivamente, pero solamente de los directorios (o carpetas, como más os guste llamarlos):

find . -type d -exec chmod 0755 {} \;

Esta última sentencia hay que ejecutarla como root. Si lo que queremos es cambiar el permiso solamente de los ficheros tan sólo hay que cambiar “-type d” por “-type f” . Al igual que con la búsqueda de texto, si solamente queremos cambiar los permisos a los ficheros con determinada extensión (por ejemplo .php), tan sólo tenemos que cambiar ‘-type f’ por ‘-name “*.php”‘.

Espero que os sea de utilidad :)

  • Share/Bookmark

Linux me odia (y yo a él…)

Juro por dios que lo he intentado todo pero estoy apunto de rendirme…

Mis comienzos con Linux se remontan al año 1999. Por aquella época lo usaba porque, bueno, dedicándome a la informática era un poco vergonzoso desconocer ese sistema operativo. Eso sí, lo usaba en modo consola y sin Internet, era más que nada para juguetear con él. Después pasaron varios años sin hacer uso de nuestro amigo hasta que me incorporé a abcguionistas como webmaster, porque las cosas como son, de un Windows sí que no me fío para dejarlo online durante meses, sé que tendría que poner un cron para que se reiniciara cada 5 ó 6 días :) . En abcguionistas nunca he tenido problemas salvo cuando me he pasado de curioso y he tocado donde no debía. La verdad es que apenas me tengo que preocupar por él, de vez en cuando actualizo todos los servidores (Apache, MySQL, PHP, etc) para corregir bugs (reconozco que tengo un poco de versionitis), pero poco más tengo que hacer en su mantenimiento.

El problema lo tengo cuando intento intalar Linux en el ordenador de casa. No me importa no poder jugar, ni me importa no tener ciertos programas que uso habitualmente en Windows, lo que me hierve la sangre es que siempre hay algo que no funciona que me hace desinstalarlo. Y no será porque no haya probado distros distintas (Ubuntu, knoppix, PCLinuxOS, Fedora, OpenSUSE..bueno, todo lo que salga en distrowatch lo he instalado). Y es que cuando no es porque no me reconoce el dispositivo de red inalámbrico, es porque me da problemas la tarjeta gráfica y cuando no es esta última es porque no puedo acceder a la red de Windows, hasta he tenido problemas alguna vez por el teclado!!!!…y le echo horas, muchas horas y hasta me levanto corriendo por la mañana para seguir intentándolo y…acabo cagándome en Linus Torvalds, en su pingüino y en todo lo que pase a menos de 50 metros de mi lado. Y no es porque sea un inútil en esto de los ordenadores, que me giro más veces viendo escaparates de informática que mirando a tías buenas.

De todas formas debo estar ya muy tocado del ala porque ahora mismo me estoy bajando el Linux Mint para intentarlo de nuevo :) . De hecho me voy a poner a instalarlo ahora mismo…se va a cagar!!!!

  • Share/Bookmark