Matar todos los procesos de un tiro

Apunto aquí una orden que he necesitado miles de veces y de la que nunca me acuerdo:

$ kill -9 `ps -ef | grep -i nombre | awk {‘print $2’}`

Mata todos los procesos que tengan la cadena nombre en la descripción . Si no te acuerdas de esa orden, siempre puedes hacer un ps -aww| grep nombre y luego matar los procesos copiando y pegando los identificadores en una orden kill.

QtTube: cómo descargar vídeos de YouTube con un click

screenshot11.pngQtTube es una pequeña pero útil aplicación para descargar vídeos de YouTube con un click, sin usar la línea de comandos para nada.

Como el paquete de QtTube no está disponible en Synaptic y tiene algunas dependencias, su instalación no es trivial. Dado que estos días he estado impartiendo un curso de iniciación al software libre, aproveché este ejemplo para explicar la instalación de aplicaciones sin usar Synaptic, ni .debs. (sin llegar todavía a la compilación de fuentes con el hechizo mágico ./configure && make && make install) QtTube es el ejemplo de transición perfecto. Para que la explicación fuera reaprovechable, grabé un vídeo en formato .ogg.

Lo podéis encontrar troceado ( [ 1 , 2 , 3 , 4 , 5]} o completo ( 74 MB  )

Nota para recordar: se pueden concatenar varios vídeos .ogg en uno sólo desde la línea de comandos simplemente así:

$ cat qttube_{1..5}.ogg >> qttube.ogg

Para que luego digan que la línea de comandos está anticuada y sólo la usamos los viejos del lugar … 🙂

cp con barra de progreso

¿Quieres que al copiar con cp un fichero enorme (una imagen .iso por ejemplo) de una carpeta a otra (situadas en distintos discos, para hacer más divertido el asunto) se vea una barra de progreso tal y como sucede al usar wget?

Es decir, ¿quieres conseguir algo así?

% cp_p /mnt/raid/pub/iso/debian/debian-2.2r4potato-i386-netinst.iso /dev/null
 76% [===========================================>                    ]

Bien, pues en este blog han publicado un shell script de unas 20 líneas para hacer justo eso. Crazy.

AutoNota: SSH Port Forwarding

Una nota para mí y para quien le interese; siempre tengo que andar buscando la sintaxis correcta para hacer SSH Port Forwarding. El objetivo es ‘sencillo’: todo lo que haga a través del 8080 de mi máquina local debe de ser interpretado en el puerto 80 de mi máquina remota, que tiene un servidor Apache escuchando en la IP local 192.168.1.2 . Lo que la máquina remota devuelva debe de venir de vuelta a mi máquina local, todo ello de forma transparente, y cifrado por ssh (asumiendo que tengo una cuenta SSH escuchando en el puerto 1234 a nombre de usuario en la máquina remota):


$ ssh -p 1234 -f -C -L 8080:192.168.1.2:80 -l usuario maquina.remota.com sleep 7200

En la máquina desde la que lanzo la orden ssh anterior, pongo en /etc/hosts los nombres de los hosts virtuales del Apache que está escuchando en 192.168.1.2 en la máquina remota.

Un esquemita ayuda a comprender:

Máquina_Test —————————— Máquina.Remota.com
(lanzo la orden ssh) (ssh tunneling) 192.168.1.2:80 (Apache escuchando aquí)

(el ssh está a la escucha en el puerto ‘raro’ 1234 en máquina remota, en lugar del clásico 22)

Ya no se me volverá a perder este apunte 😉

Deshabilitar el pitido de error en bash

Este es un apunte rápido para no volverme loco buscando la forma de deshabilitar el beep (pitido) de error de una consola en modo texto (sin X) , con Bash ( corriendo bajo vmplayer en mi caso, pero eso no influye en la efectividad del truco)

$ setterm -blength 0

Anteriormente en DiarioLinux ya habíamos hablado de esto, pero el truco estaba orientado a consolas en modo X (abrir terminal desde un entorno gráfico). Recordemos que para esas ocasiones el comando sería:

$ xset -b

Espero que así los pitiditos dejen de aturdirme 😉