Tip: Organizar de manera automática el Escritorio

El orden, ah! mantener de manera ordenada el escritorio, soy un completo desastre en este aspecto. Descargo muchos ficheros, se van acumulando y luego pierdo mucho tiempo organizandolos en carpetas. Hace tiempo se me ocurrio organizar algo más el escritorio creando un wallpaper dinamico. Pero ahora se me ha ocurrido algo mejor, usando un script muy sencillo en bash y una tarea programada mediante cron. Veamos un ejemplo en el caso de los ficheros PDF y es que últimamente voy generando muchos. Todas mis descargas desde el navegador las hago por defecto sobre el escritorio, por que no programar por ejemplo un script que me mueva mis ficheros .pdf localizados en el Escritorio a mi carpeta “Documentos”. Y eso mismo es lo que vamos a hacer con un script en cron que se ejecute cada minuto y que de manera automatica mueva todos los ficheros .pdf del Escritorio a la carpeta “Documentos”. Así me dara igual ir descargando 10,20, 30 o mil ficheros pdf que de manera automática se iran almacenando en la carpeta correspondiente. Aqui dejo el contenido del script, editalo como veas necesario:


#!/bin/bash

#-------------------------------------------------------------------------------------------
# Script para ejecutar por CRON cada 1 min, para mover los archivos PDF del escritorio a mi
# carpeta de documentos
#-------------------------------------------------------------------------------------------

# Siendo como soy un desastre, en busca del orden...
# Nota: podria hacerse lo mismo para imagenes, flv, mp3, avi, iso etc...


ORIGEN="$HOME/Escritorio"
DESTINO="$HOME/Documentos"

# Mueve todos los ficheros PDF al Destino
mv $ORIGEN/*.pdf $DESTINO

#
# Guardo el script en /usr/bin/Mueve.sh 
# Le doy permisos de ejecucion:
# chmod +x Mueve.sh
#
# y programo esta entrada del cron:
#
# crontab -e
# */1 * * * * /usr/bin/Mueve.sh
#
# Para que cada minuto ejecute el script y me mueva los ficheros .pdf descargados desde 
# el Escritorio
#

El script es muy sencillo, solamente hace un mover (mv $HOME/*.pdf a $HOME/Documentos), alguien podria currarse un script más completo que almacenara en carpetas por fecha por ejemplo, A mi en principio me vale guardando todo en “Documentos” del directorio HOME.

Guarda este script como Mueve.sh (o el nombre que quieras) y dale permisos de ejecucion:

$ sudo chmod +x Mueve.sh

Entonces lo mueves a la carpeta /usr/bin para que este accesible a traves del path:

$ sudo mv Mueve.sh /usr/bin

Crea entonces una programación mediante cron, para ello ejecuta:

$ crontab -e

y escribe una linea tal como:

*/1 * * * * /usr/bin/Mueve.sh

Esta linea lo que hace es ejecutar cada minuto el script “Mueve.sh” o en definitiva mover todos los ficheros que actualmente existan en el Escritorio a la carpeta “Documentos”.

El ejemplo es sólo para ficheros con extensión PDF pero se podria ampliar fácilmente para que te moviera otro tipo de archivos. P.ej:

- imagenes (.jpg, .gif, etc…) a $HOME/Imagenes
- musica (.mp3) a $HOME/Música
- videos (.avi, .flv) a $HOME/Videos

ya depende del uso que quiera darle cada uno. Ventajas de Linux…

Advertisement

23 Respuestas a “Tip: Organizar de manera automática el Escritorio”


  1. 1 Darkbook septiembre 13, 2010 a las 8:52 pm

    Excelente, una idea original y sencilla que me venía haciendo falta para mi carpeta de descargas, que siempre anda como mi cuarto

  2. 2 antonioserranol septiembre 13, 2010 a las 9:37 pm

    Feliz dia del programador..!

  3. 3 inukaze septiembre 13, 2010 a las 10:28 pm

    Ciertamente nosotros somos un desastre descargando todo en el escritorio xD , mejor le agrego unas cuantas lineas a dicho script para mover a las carpetas que me trajo el Ubuntu ^^

    aunque yo dentro de Documentos , tengo capetas con nombres como “doc” , “pdf” , “xls” , “odt” , etc ….

    • 4 jose septiembre 13, 2010 a las 10:53 pm

      Si ya le he hecho una pequeña modificacion para que me vaya creando carpetas con la fecha, p.ej Videos/13sep, Videos/14sep, etc…

      Seria algo parecido a:

      ORIGEN=”$HOME/Escritorio”
      DESTINO_DOCUMENTOS=”$HOME/Documentos”
      DESTINO_VIDEOS=”$HOME/Videos”

      FECHA=`date +”%d%b”`

      if [ -d $DESTINO_VIDEOS/$FECHA ];
      then
      echo “Existe directorio, no es necesario crearlo.”
      else
      mkdir “$DESTINO_VIDEOS/$FECHA”
      fi

      # Mueve todos los ficheros PDF al Destino
      mv $ORIGEN/*.pdf $DESTINO_DOCUMENTOS

      # Mueve todos los ficheros FLV a Videos/fecha_la_que_sea
      mv $ORIGEN/*.flv $DESTINO_VIDEOS/$FECHA

      • 5 jose septiembre 13, 2010 a las 10:54 pm

        Pues en vez de fecha, se puede hacer igual por extension:

        mv *.doc $HOME/Documentos/doc
        mv *.xls $HOME/Documentos/xls

        Eso ya como cada uno quiera. Incluso estaba pensando en hacerlo via Python, especie de configurador, pero no tengo mucho tiempo ahora.

  4. 6 Wagner septiembre 13, 2010 a las 11:29 pm

    Muy interesante la idea, gracias :)

  5. 7 mukenio septiembre 14, 2010 a las 12:31 am

    Falta agregarle al final que actualice el escritorio automáticamente. Para eso es necesario tener instalado xsendkeycode.
    sudo apt-get install lineakd

    Entonces agregar al final:

    xsendkeycode 71 1
    xsendkeycode 71 0

  6. 8 coco septiembre 14, 2010 a las 1:03 am

    Muy interesante.

    Sólo me surge una duda: si estamos descargando una imagen ISO o un vídeo de gran tamaño, el script que se dispara una vez por minuto podría mover el archivo a la carpeta correspondiente cuando éste aún no se ha descargado por completo…

    Si metemos el mv en una condición if que compare la hora de los archivos con la hora actual del sistema (con una tolerancia de 10 o 15 minutos) podriamos minimizar ese inconveniente…

    No soy un experto en shell-script, pero me voy a poner a probarlo un rato.

    Saludos.

    • 9 superpiwi septiembre 14, 2010 a las 7:02 am

      Bueno depende con que lo descargues, algunos gestores mientras la descarga no está completa la guardan con extensión .part o .download y luego ya al finalizar es cuando dejan la extensión original.

      • 10 coco septiembre 14, 2010 a las 12:31 pm

        Tienes razón. Por ejemplo, uso Chromium sin extensiones ni configuraciones adicionales y conserva la extensión original durante la descarga.

        Más adelante comenté sobre una prueba que hice.

        Saludos.

  7. 11 Christopher septiembre 14, 2010 a las 3:46 am

    Me gusto la idea, pero sin cron y además en vez de usar $HOME me gusta usar más ~, se ve más elegante.

  8. 12 coco septiembre 14, 2010 a las 3:57 am

    Hice la prueba de mover una imagen ISO mientras se descargaba, y curiosamente en la carpeta destino pude ver como la imagen seguía actualizándose (es decir, la descarga continuaba de forma transparente). Sin embargo, si por accidente intento descargar de nuevo (recuerda que el archivo ya no se encuentra en la carpeta original), el cron moverá nuevamente la imagen ISO a la carpeta destino, perdiéndose los cambios que se habían movido antes. Además, en el browser aparecen ahora dos hilos de descargas para el mismo archivo.

    Encontré una forma de condicionar que se muevan solamente aquellas imágenes ISO que fueron actualizadas por última vez hace más de 15 minutos:

    find $HOME/Descargas/ -name ‘*.iso’ -mmin +15 -exec mv ‘{}’ $HOME/ISOS \;

    Por supuesto, no garantiza que el archivo haya sido descargado completamente (por ejemplo: pudo haberse cortado la red hace más de 15 minutos).

    Espero que les pueda resultar útil.

    • 13 riq septiembre 14, 2010 a las 10:12 am

      muy buena idea, ¿tambien se podria hacer para ejecutarlo cuando tu quieras?,nose igual con, deskbar o creando un lanzador,es que cuando descargo (pdf o documentos) al escritorio es para acordarme de que tengo que mirarlo y si me lo mueve automaticamente despues se me pasa.

      • 14 coco septiembre 15, 2010 a las 2:45 am

        para ejecutarlo cuando quieras, es más útil lo que dice superpiwi… solamente tienes que omitir todo lo referente al crontab y vincular el script Mueve.sh en el lanzador de tu preferencia…

        Saludos

  9. 15 atareao septiembre 14, 2010 a las 4:29 am

    Muy buena idea, me la apunto.

  10. 16 Sinaco septiembre 14, 2010 a las 8:12 am

    Para eso es mucho mejor la solución ofrecida por fsniper.

  11. 17 Afsoon septiembre 14, 2010 a las 8:17 am

    Voy a hacer un function() en bash y lo publico para imagenes ya como son varias extensiones.

    • 18 Afsoon septiembre 14, 2010 a las 8:54 am

      Aqui la teneis son pocos formatos pero son los mas usados y quien quiera que ponga mas formatos es libre de hacer lo que quiera

      #————————————#
      #—-Hecho por Afsoon la function—-#
      #————————————#

      function extImg(){
      DESTINO_IMAGENES=”$HOME/Imágenes”
      ORIGEN=”$HOME/Escritorio”
      mv $ORIGEN/*.png $DESTINO_IMAGENES
      mv $ORIGEN/*.jpg $DESTINO_IMAGENES
      mv $ORIGEN/*.gif $DESTINO_IMAGENES
      }

      Ya sabeis como se declaran las function asi que no hace falta que lo explique

  12. 19 alexneb septiembre 15, 2010 a las 4:52 pm

    yo lo he editado para que me lea algunos capitulos que me descargo y los mande a su seccion debidamente…
    me quedó asi :D … :

    #!/bin/bash
    #——————————————————————————————-
    # Script para ejecutar por CRON cada 1 min, para organizar archivos en mis
    # carpetas de documentos, descargas, musica, imagenes… XD
    #——————————————————————————————-

    # Siendo como soy un desastre, en busca del orden…
    #

    ORIGEN=”$HOME/downloads”
    ORIGEN1=”$HOME”
    ORIGEN2=”/tmp”
    ORIGEN3=”$HOME/videos”

    DESTINO1=”$HOME/images”
    DESTINO2=”$HOME/music”
    DESTINO3=”$HOME/videos”
    DESTINO4=”$HOME/documents”

    #series

    DESTINO5=”$HOME/videos/series/7vidas”
    DESTINO6=”$HOME/videos/series/modernfamily”
    DESTINO7=”$HOME/videos/series/aida”

    # reglas para mover imagenes

    mv $ORIGEN1/*.jpeg $DESTINO1
    mv $ORIGEN1/*.gif $DESTINO1
    mv $ORIGEN1/*.jpg $DESTINO1
    mv $ORIGEN1/*.bmp $DESTINO1
    mv $ORIGEN1/*.png $DESTINO1

    mv $ORIGEN/*.jpeg $DESTINO1
    mv $ORIGEN/*.gif $DESTINO1
    mv $ORIGEN/*.jpg $DESTINO1
    mv $ORIGEN/*.bmp $DESTINO1
    mv $ORIGEN/*.png $DESTINO1

    #reglas para mover musica

    mv $ORIGEN1/*.mp3 $DESTINO2
    mv $ORIGEN1/*.wav $DESTINO2
    mv $ORIGEN1/*.ogg $DESTINO2
    mv $ORIGEN1/*.mid $DESTINO2

    mv $ORIGEN/*.mp3 $DESTINO2
    mv $ORIGEN/*.wav $DESTINO2
    mv $ORIGEN/*.ogg $DESTINO2
    mv $ORIGEN/*.mid $DESTINO2
    mv $ORIGEN/*.m4a $DESTINO2

    #reglas para mover pelis

    mv $ORIGEN2/*.avi $DESTINO3
    mv $ORIGEN2/*.flv $DESTINO3
    mv $ORIGEN2/*.mov $DESTINO3
    mv $ORIGEN2/*.mp4 $DESTINO3
    mv $ORIGEN2/Flash* $DESTINO3

    mv $ORIGEN1/*.rmv $DESTINO3
    mv $ORIGEN1/*.rmvb $DESTINO3
    mv $ORIGEN1/*.avi $DESTINO3
    mv $ORIGEN1/*.flv $DESTINO3
    mv $ORIGEN1/*.mov $DESTINO3
    mv $ORIGEN1/*.mp4 $DESTINO3

    mv $ORIGEN/*.rmv $DESTINO3
    mv $ORIGEN/*.rmvb $DESTINO3
    mv $ORIGEN/*.avi $DESTINO3
    mv $ORIGEN/*.flv $DESTINO3
    mv $ORIGEN/*.mov $DESTINO3
    mv $ORIGEN/*.mp4 $DESTINO3

    #Series
    mv $ORIGEN3/*Vidas* $DESTINO5
    mv $ORIGEN3/*M* $DESTINO6
    mv $ORIGEN3/*Aida* $DESTINO7
    mv $ORIGEN3/*aida* $DESTINO7

    #reglas para mover documentos

    mv $ORIGEN1/*.xls $DESTINO4
    mv $ORIGEN1/*.tmp $DESTINO4
    mv $ORIGEN1/*.pdf $DESTINO4
    mv $ORIGEN1/*.doc $DESTINO4
    mv $ORIGEN1/*.odt $DESTINO4
    mv $ORIGEN1/*.txt $DESTINO4

    mv $ORIGEN/*.xls $DESTINO4
    mv $ORIGEN/*.tmp $DESTINO4
    mv $ORIGEN/*.pdf $DESTINO4
    mv $ORIGEN/*.doc $DESTINO4
    mv $ORIGEN/*.odt $DESTINO4
    mv $ORIGEN/*.txt $DESTINO4
    #
    # y programo esta entrada en cron:
    #
    # crontab -e
    # */1 * * * * /****orden.sh
    #
    # Para que cada minuto ejecute el script y mueva para organizar archivos en mis
    # carpetas de documentos, descargas, musica, imagenes… XD
    #


  1. 1 Tip: Organizar de manera automática el Escritorio | Ayuda Linux Trackback en septiembre 13, 2010 a las 9:45 pm
  2. 2 Script: Actualización de Organizar de manera automática el Escritorio « Ubuntu Life Trackback en septiembre 18, 2010 a las 1:33 pm
  3. 3 Script: Organizar de manera automática el Escritorio | Ayuda Linux Trackback en septiembre 18, 2010 a las 2:36 pm
  4. 4 Como tener organizadas nuestras descargas (EDIT) | LIBROS GRATIS PDF Trackback en marzo 30, 2011 a las 1:54 pm

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s





The next version of Ubuntu is coming soon




¿Es compatible tu equipo con Ubuntu?


( Muchos fondos de pantalla, aqui )

DESCARGATE SCIFI LIFE

365 Dias de Soledad
Me debes los sueños, las promesas y las noches rotas. Me debes la paz, la sonrisa y la esperanza robadas. Me debes la sangre, las lágrimas y el sudor vertido. Me debes las noches vacías, los abrazos anhelados. Me debes un beso de ajenjo de tu amarga boca.

The Ubuntu Counter Project - user number # 11961
Geo Visitors Map

 

septiembre 2010
L M X J V S D
« ago   oct »
 12345
6789101112
13141516171819
20212223242526
27282930  

Blog Stats

  • 20,370,140 hits

Seguir

Get every new post delivered to your Inbox.

Únete a otros 617 seguidores