Tag tip - Userlinux.net

Posts sobre el tag tip

Twitter en consola

r0sk 26.Sep.2008 1 Comentarios 779 Lecturas
Ayer me preguntaron si se podía usar Twitter desde la consola de Linux, supuse que sería tan sencillo como hacer un mini cliente en php -por ejemplo- que, haciendo uso del modo cli, se loguease y enviase los twitts con curl() pero ¿para qué reinventar la rueda?. Command Line Twitter Client hace lo mismo y está escrito en Perl -esa gran asignatura pendiente-.
$ while true; do clear; ./twitter.pl -r; sleep 60; done
Si agregamos un bucle infinito y algo de imaginación podremos observar el auténtico poder de la linea de comandos. Espero que te/os sirva.
Categorías:

Bash tip: Convertir pdf en jpg

r0sk 13.Dec.2006 4 Comentarios 2120 Lecturas
Si no tenemos a mano un pdf2jpg y queremos usar convert para librarnos del apuro, con un pequeño script de unas pocas líneas podremos pasar ese pdf de 100 hojas a 100 jpg's distintos para tratarlos de forma independiente:
function convert_all
{
  convert $1  _.jpg
  j=0
  for i in *.jpg; do
    j=`expr $j + 1`
    mv "$i" `echo "$j".jpg`;
  done
}

convert_all document.pdf
Con esta pequeña función lo que hago es convertir el pdf pasado como argumento $1 a jpg (0_-.jpg, 1_-.jpg...), en el bucle renombro las imágenes de forma que queden 1.jpg, 2.jpg... correspondiendo a las páginas del pdf.

Bash tip: Operaciones con imágenes

r0sk 07.Dec.2006 2 Comentarios 2935 Lecturas
Hace algún tiempo con ayuda de convert y un poco de bash scripting (ni eso, con un for basta) conseguí en unos segundos lo que antaño llevaría horas: redimensionar cerca de 1000 fotos de un solo golpe. Hoy introduzco una pequeña variante, la rotación.
# cd ~/masde1000fotos/
# for f in `ls`; do convert $f -rotate 90 $f; done
Además de estas simples operaciones, si echamos un vistazo al manual de convert vemos la cantidad de efectos que soporta. Con un poco de imaginación y algunos recursos el límite está en nuestra imaginación:

K3b y mp3

r0sk 05.Feb.2006 0 Comentarios 1289 Lecturas
Si ya lo ha dicho Murphy unas cuantas veces, basta que uno tenga prisa para que algo no funcione y se vaya con las ganas.

Pues si, tengo instalado lame, mad, tengo los w32codecs, reproduzco mp3, ogg y lo que se me antoje, pero a la hora de grabar un CD Audio para el coche con el tiempo justo k3b se empeña en decir que no, que el formato no está soportado.

En fin, que estos chicos de Ubuntu se han cubierto de gloria otra vez más, cambiando la forma de hacer las cosas:
# apt-get install k3b-mp3
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias... Hecho
Se instalarán los siguientes paquetes NUEVOS:
  k3b-mp3
0 actualizados, 1 se instalarán, 0 para eliminar y 0 no actualizados.
Necesito descargar 33,1kB de archivos.
Se utilizarán 98,3kB de espacio de disco adicional después de desempaquetar.
Des:1 http://es.archive.ubuntu.com breezy-backports/universe k3b-mp3 0.12.7-1ubuntu1~breezy1 [33,1kB]
Descargados 33,1kB en 4s (8250B/s)

Preconfigurando paquetes ...
Seleccionando el paquete k3b-mp3 previamente no seleccionado.
(Leyendo la base de datos ...
93297 ficheros y directorios instalados actualmente.)
Desempaquetando k3b-mp3 (de .../k3b-mp3_0.12.7-1ubuntu1~breezy1_i386.deb) ...
Configurando k3b-mp3 (0.12.7-1ubuntu1~breezy1) ...
#
Y no es la dificultad lo que me exalta, sino el tener que admitir la razón a las malditas teorías del amigo Murphy.
Categorías:
Tags:

SpamAssassin

r0sk 04.Jan.2006 0 Comentarios 2143 Lecturas
SpamAssassin
Spam Assassin es un software detector de spam que puede trabajar conjuntamente con cualquier MTA. En este caso sirve de ayuda a Postfix para filtrar correo no legítimo. La teoría de funcionamiento es simple: SpamAssassin puntúa todos los correos que se le pasen dependiendo del id de mensaje, contenido y demás filtros. La puntuación resultante se compara con la configurada y si sobrepasa ese valor es marcado como [spam]. Si no supera el patrón, el correo es legítimo y pasa la prueba [ham].

Sería una utopía pensar que SpamAssassin fuera 100% efectivo puesto que es imposible conocer de antemano todas las posibles variantes de spam que van saliendo día a día, por lo que tendremos que ir alimentando su conocimiento y sus filtros bayesianos.

¿Cómo podemos enseñar a SpamAssassin lo que es bueno y lo que no?. Utilizando correctamente un servidor IMAP y los comandos correspondientes, me explico.

Vamos a crear una cuenta de correo antispam@dominio.com con acceso IMAP. En esa cuenta y con nuestro cliente favorito creamos dos carpetas: ham/ y spam/. La primera la utilizaremos para correos legítimos que SpamAssassin ha marcado como spam y la segunda para situar correos no solicitados, bastante intuitivo :).

Una vez tenemos una muestra considerable en ambas carpetas, (si tenemos varias cuentas de correo donde el tráfico sea más o menos intenso será cuestión de un par de días), tenemos que decirle a SpamAssassin qué es bueno y qué es malo:
# cd /var/spool/postfix/www.dominio.com/antispam/
# sa-learn --spam .Maildir/spam/
Learned tokens from 1 message(s) (33 message(s) examined)
# sa-learn -ham .Maildir/ham/
Learned tokens from 12 message(s) (54 message(s) examined)
Como observación decir que no aprenderá de todos los mensajes de la carpeta, por eso la muestra ha de ser abundante. El comando sa-learn viene en el paquete de SpamAssassin y si echamos un vistazo a su manual vemos todas las posibilidades del mismo. Con apenas un argumento podemos aprender lo que es bueno, lo que es malo, e incluso olvidar lo aprendido, ¡ojalá fuese tan sencillo en la vida real!.
Categorías:

Actualizando phpBB

r0sk 03.Jan.2006 0 Comentarios 7437 Lecturas
Echando un vistazo a Menéame leo una entrada de Fabriciano: Se ha liberado una nueva versión del motor de foros phpBB, la 2.0.19. Es recomendable que todos los webmasters que tienen implementado en sus sitios este sistema de foros, procedan a su actualización... Como buen BOFH hay algún que otro foro de clientes caprichosos por este software, con lo que actualizar toca:
Categorías:
Tags:

Bash tip: Renombrar masivamente (y III)

r0sk 29.Dec.2005 3 Comentarios 1885 Lecturas
Hace algún tiempo explicaba un bash tip bastante interesante sobre como renombrar masivamente y con un solo comando fotografías, quitar espacios a los mp3...

En esta ocasión se presentaba algo más peliagudo a priori. Para poneros en situación imaginaos como administradores de un Bind9 con 500 dominios en su poder, no está mal ¿verdad?.

Ahora el problema, por circunstancias ajenas se decide cambiar de proveedor de Internet, con lo que la IP también varía. De un simple vistazo podemos decudir que en cada zona de dominio tenemos (al menos) dos entradas A con la ip que quedará desfasada.

Tenemos dos opciones, editar a mano todos y cada uno de esos archivos y rezar para no equivocarnos al escribir (o copiar&pegar) la nueva IP, o hacerlo como todo geek haría:
# for i in *.hosts; do cat $i | 
sed 's/111.111.111.111/222.222.222.222/' > $i.new ;
rm $i; mv $i.new $i; done
Aunque creo que se entiende a simple vista: Para todos los archivos *.hosts buscamos la IP 111.111.111 y la sustituimos por 222.222.222.222 en un archivo temporal .new. Después machacamos los originales.

¡Que la fuerza bash te acompañe!

Actualización: Repasando he encontado otra entrada donde explicaba exactamente lo mismo. Estoy mayor, lo sé :(.
Categorías:

Bash tip: Redimensionando imágenes

r0sk 21.Nov.2005 4 Comentarios 1302 Lecturas
Si hay algo que detesto es la monotonía de tareas en cantidades industriales. Cuando hay un directorio lleno de fotos enormes que reducir de tamaño podemos hacer 2 cosas coherentes: Programar una macro que automatice el proceso de redimensionado de imágenes siempre y cuando dicho software lo soporte (ni lo sé ni me interesa) o usar el poder de la consola tirando de convert:
# cd ~/masde1000fotos/
# for f in `ls`; do convert $f -resize 510x383 $f; done
Concretamente estamos pasando fotos de 1280x960 a un tamaño relativamente considerable: 510x383 (conservando las proporciones). Ahí queda el tip, para la posteridad.

Reemplazo múltiple

r0sk 31.Jan.2005 4 Comentarios 1629 Lecturas
Dada una estructura de directorios X con un número variable de archivos Y, donde Y no es inferior a 300, ¿cambiarías manualmente una cadena 'cadena' por 'cadena2' en cada uno de los Y archivos?, ¿te volverías loco en tal hazaña?. Ambas preguntas tienen respuesta evidente:
$ cd X/
$ for f in `grep -r cadena * | cut -f 1 -d : | uniq`; do cat $f | sed s/cadena/cadena2/g > /tmp/temporal.temp && mv -f /tmp/temporal.temp $f; done
$ 
Recuérdalo pequeño saltamontes, te ahorrará muchas horas de trabajo ;).
Categorías:

Bash tip: Renombrar masivamente (I)

r0sk 12.Dec.2003 5 Comentarios 2033 Lecturas
¿Quién no ha querido alguna vez quitar los dichosos espacios que tenemos siempre en los mp3 que nos bajamos o que nos pasan?. Bien, pues mirando un poco de bash, y recibiendo alguna que otra ayuda y consejo, fijémonos que el siguiente script hace exactamente eso:
bash-2.05b$ for i in *.mp3; do mv "$i" `echo "$i" | tr ' ' '_'`; done
Y si ahora renombramos todas nuestras fotos (unas 100 o así) de foto01 a img01, ¿haremos la misma operación 100 veces? NO, para eso está el bash:
bash-2.05b$ for i in `ls *jpg`; do mv "$i" `echo "$i" | sed 's/foto/img/'`; done
Categorías:

Buscar

Cargando...

Categorías

Últimos comentarios

  • BartlettLilly20
  • r0sk
  • coder
  • argordmel
  • uveic
  • MarcosBL
  • quemada
  • alexander
  • Hakky111
  • tramel
  • hoyadas
  • hoyadas
  • hoyadas
  • Anubys
  • Arturo

Tagcloud

lugo freebsd seguridad futbol iphone mysql champions userlinux alemania_2006 copa bsd cakephp rfilms deportes meme blogs conciertos bake debian macosx apple humor programación música games 2008 beers tip lucux cake sysadmin ssh ibook films cumpleaños bash league barça soccer mundial frases opinion felicidades hack php juegos cms personal 2007 ubuntu ds mac sidenotes openbsd linux blogsfera rsidenotes blog nintendo san_froilan

Archivo

Social

Twitter

Enlaces

Enlaces de interés