Es la eterna pregunta, y al parecer la respuesta es mucho más fácil para los usuarios linux que saben correr un script (a veces sólo necesitas copiar y pegar).
Hace ya un tiempo, encontré en lifehacker un script que te permite guardar el último video flash que viste y es algo parecido a esto:
#!/bin/bash name=$(/usr/bin/zenity --entry --title="Nombre del video..." --height=100 --width=300 --text="Nombre del video ") cp /tmp/Fla* ~/Vídeos/online/"$name"
Básicamente lo que estamos haciendo al ver un video en flash, es descargarlo a la pc mientras lo vemos, por lo que el script sólo tiene la tarea de copiar el video de la carpeta temporal (/tmp) a la carpeta que le indiquemos (en mi caso -/Vídeos/online/), el script usa zenity para mostrar una caja de texto donde indicaremos el nuevo nombre del archivo. Todo funcionó bastante bien, y de hecho agregué un launcher a mi panel para poder guardarlo con sólo presionar el ícono. Sin embargo, con el launcher no siempre funcionaba, y es que si tenía más de un video en la carpeta temporal o no tenía ningún video, no se realizaba correctamente la copia y con el launcher no había manera de saberlo.
Por lo tanto me di a la tarea de modificar el código, también con la ayuda de zenity, para hacerlo más práctico y amigable y le agregué las siguientes características:
- Busca realmente el último video guardado, no importa cuántos haya, siempre será el último.
- Al correrlo te pregunta si deseas ver la previsualización del video, de ser así, mostrará el video encontrado y el video guardado en la aplicación predeterminada del sistema
- Para guardarlo puedes configurar una carpeta por defecto donde sólo tendrás que introducir el nuevo nombre del archivo
- Si no encuentra algún video en la carpeta temporal, te lo indica con un mensaje.
Bueno, pues aquí les dejo el código, recuerden, hay que copiarlo y pegarlo en un archivo de texto nuevo, guardarlo con extensión .sh y hacerlo ejecutable, obviamente para hacerlo más práctico usalo con un launcher en algún panel.
#!/bin/bash #Carpeta por default para guardar el video encontrado, la carpeta debe existir carpeta_guardar="$HOME/Vídeos/online" #Carpeta temporal donde se guardan los videos carpeta_temporal="/tmp" ################################################################################# #Buscamos en la carpeta temporal el último archivo modificado que comience con "Fla" cd $carpeta_temporal origen=$(ls -Atr Fla* | tail -1) #Verificamos que efectivamente existe un video if test -z $origen ; then zenity --warning --text="No hay archivos de video para copiar" else if zenity --question --text="¿Previsualizar videos?" ; then ver_videos=true else ver_videos=false fi if $ver_videos ; then gnome-open "$origen" fi #mostramos el dialogo para guardar el video destino=$(zenity --file-selection --title="Guardar el video" --save --filename="$carpeta_guardar/$origen") case $? in 0) cp "$carpeta_temporal/$origen" "$destino" if $ver_videos ; then gnome-open "$destino" fi;; 1) zenity --info --text="No se guardó el archivo";; -1) zenity --info --text="No se guardó el archivo";; esac fi
Espero que el código le sea útil a alguien, si tienes dudas en cómo implementarlo puedes preguntarme sin problemas en los comentarios, siempre estoy dispuesto a ayudar. Saludos.
10/09/2009 at 12:35 pm Permalink
y no es mas fácil buscar el vídeo en la carpeta /tmp ( ubuntu 9.04 te muestra la miniatura del vídeo, por lo que es fácilmente reconocible ) y hacer botón derecho del ratón – > copiar. y pegar el vídeo en el escritorio? yo lo hago así para los vídeos del megavideo
Lo único que después le tienes que poner el nombre a mano.
10/09/2009 at 4:46 pm Permalink
Estoy de acuerdo contigo, precisamente para eso fue la explicación. Pero aún así, no hay como poder hacer eso mismo en un solo click, no crees?
Saludos, gracias por tu comentario
.
12/09/2009 at 6:24 pm Permalink
hola, edgar, ps ya sabes que soy muy novato en linux (despues de tanto tiempo) pasaba por aki queriendo recordar tu explicacion de como guardar el ultimo video visto, pero ps no le encuentro como, ayudame porfa.