Automatizar la descarga de enlaces que cumplan patrón

Quiero descargar todos los enlaces de la página http://packages.medibuntu.org/pool/non-free/f/ffmpeg-debian/ que contengan i386 en el nombre. Por supuesto, de forma automática (si repites más de 2 veces el mismo gesto, y crees que en el futuro lo volverás a hacer, hay que automatizar):

juanan@morton:/tmp/fmpeg$ lynx -nonumbers  -dump http://packages.medibuntu.org/pool/non-free/f/ffmpeg-debian/| grep i386  | sed -e ‘s/^ *//’  | awk ‘{print $3}’ | wget -B «http://packages.medibuntu.org/pool/non-free/f/ffmpeg-debian/» -i –

lynx: navegador en modo texto

-dump : interpretar el HTML de la página y devolverlo por salida estándar

-nonumbers: mostrar los enlaces sin numerar

sed -e ‘s/^ *//’  : left trim  (recortar espacios en blanco, por la izquierda)

awk ‘{print $3}’ : quedarme con la tercera columna

wget -B URL   : URL base desde la que descargar

-i  –  : -i indica que le vamos a pasar un fichero a wget con las URLs de lo que queremos descargar. Como el filtro ya lo hemos hecho, y lo hemos enganchado a wget por un pipe, el fichero en sí no existe, sino que llega por tanto por entrada estándar (a través del pipe). Receta que usaré en más de una ocasión.

Anotando ficheros PDF en Linux

Hace unos meses comentaba cómo activar el soporte de comentarios a un PDF en Linux. La verdad es que tener que descargar una versión de prueba de Adobe Acrobat para poder activar el bit de «permitir anotaciones» me parecía matar moscas a cañonazos (aparte de que es «de prueba», i.e., a los 30 días o pagas o se acabó… y pagar 449 dólares por poder activar un bit, es algo que me da dolor de corazón). Pero es que en Linux, por más que he buscado no he encontrado otra opción (hasta que el soporte de anotaciones en Evince esté a pleno funcionamiento creo que aún pasarán unos cuantos meses). No cejo en mi empeño. Por lo que he podido averiguar, parece que Adobe Acrobat Reader (incluída la versión Linux) sólo permite crear anotaciones cuando el PDF original se creó con Adobe Acrobat Pro, y desde ahí se activó el bit. El caso es que no sólo se activa un bit, sino que Adobe Acrobat Pro incrusta alguna firma digital en el PDF que es la que realmente activa la barra de anotaciones de Reader. Incluso hay alguna respuesta contundente en Yahoo Answers ante la pregunta de «¿cómo activo el soporte de anotaciones a un PDF que no lo tiene activado?». Según esa respuesta: no se puede. Bien, sí que se puede, pero NO desde Adobe Acrobat Reader. Se puede activar el soporte de anotaciones y crear dichas anotaciones para cualquier PDF desde PDF XChange Viewer.

XChange Viewer es un visor gratuito de ficheros PDF para Windows, con soporte de anotaciones para CUALQUIER fichero PDF. Un momento… ¿cómo que para Windows? Sí, es la parte mala. La parte buena: es perfectamente usable desde WINE. Se acabó el imprimir los PDF para poder anotarlos, garabatearlos y ponerles post-its. Mientras no exista algo que permita crear anotaciones a un PDF en software libre, o aunque sea, que Adobe Acrobat Reader las permita crear con cualquier PDF, me quedo con XChange Viewer.

Un detalle más: Adobe Acrobat Reader para Linux permite visualizar las anotaciones realizadas desde PDF XChange. Lógicamente, no permite editarlas, sólo verlas (dado que falta la firma digital de Adobe en dicho PDF). Evince, permite visualizar parte de las anotaciones (y no todas porque eso es aún work-in-progress). No he podido probar Okular.

Nota: que yo sepa ni Evince, ni Okular ni ningún otro visor de PDF’s libre permite crear anotaciones estándar sobre CUALQUIER fichero PDF de tal forma que dicho fichero sea luego «legible», con las anotaciones, en cualquier otro PC con Adobe Acrobat Reader (es decir, que incruste las anotaciones en el propio PDF y no en un fichero XML aparte).

¿Problemas de login al actualizar a WordPress 2.6?

Hace un par de días se publicó la nueva versión de WordPress (el gestor de contenidos que gobierna DiarioLinux actualmente). Normalmente suelo actualizar al instante, pero en esta ocasión, y tras leer la lista de mejoras, al no haber ningún security-fix (al menos aparentemente), lo dejé para este fin de semana (hoy). Tras actualizar, intento entrar como admin y… a punto he estado de sufrir un infarto. El login de admin NO funciona. Tras calmarme un poco, he intentado reenviarme un email con el password reseteado, pero el correo desde DiarioLinux a través de WordPress parece que ahora no funciona (¿Murphy?). Suerte que dejé la actualización «para más adelante», porque no he sido el único al que le ha pasado. Gracias al blog anterior, me entero de que he de borrar las cookies para poder entrar como admin en la nueva versión 2.6. Sólo una vez, pero estas cosas se avisan DURANTE o PREVIO al proceso de instalación…. En fin, gracias a esto he aprendido que si en Firefox pulsas Ctrl+Shift+Supr, se lanza directamente el cuadro para borrar el historial, cookies, información de sesión y otros datos referentes a la privacidad. Siempre se aprende algo 😉

Domain Hacks

¿Te gusta el nombre de dominio del.icio.us?  La verdad es que hay opiniones para todos los gustos, dado que no es un nombre fácil de recordar… ¿ era del.ici.us o delicio.us o deli.cio.us o ninguno de ellos? Es un domain hack. Una triquiñuela para aprovecharse de los TLD de ciertos paises y componer con ellos el nombre de dominio. Educ.ar es otro ejemplo. Red.es otro más cercano. Si quieres, pudes jugar con este buscador de domain hacks hasta encontrar el dominio que estabas deseando 😉

¿Quién se ha llevado mi sonido?

Estás trabajando tan a gusto con una buena música de fondo en YouTube (buena colección de música en un sitio de vídeos…), cuando de repente, entre canción y canción el sonido deja de funcionar. ¿Se habrá quedado el plugin de Flash colgado? Cierras todas las pestañas/ventanas/instancias del navegador, reintentas la conexión y nada. No se oye nada. Abres el player de mp3 y tampoco. Grabas un sonido con el asistente de GNOME y tampoco.


$ /etc/init.d/alsa-utils reset

Tampoco. ¿Reiniciar? ¿En Linux? No way.

Solución : (la dejo apuntada aquí porque me ha hecho falta ya varias veces y nunca me acuerdo del dichoso comando)

# lsof -w $( find /dev -group audio )

Esa línea nos da la lista de culpables que tienen el dispositivo de sonido ocupado. A continuación vamos matándolos por su PID ¡y listo! Volvemos a tener sonido y a trabajar (no sin antes documentar el paso en DiarioLinux, para el futuro 😉

Nota: el culpable era OpenOffice (cosa que nunca hubiera sospechado…)