2005/12/20

Listas y Rápidas

Hoy aprendí unos truquitos que quiero compartir contigo.

¿Cuál es la forma más sencilla de exportar la estructura de un árbol de directorios?

En el símbolo de sistema de Windows  das la orden:

tree E:\people\women /F > arboldedirectorio.txt && notepad arboldedirectorio.txt

Donde E:\people\women es el directorio desde el cual querés comenzar a exportar la estructura. Abrís el txt y ahí lo tenés.

¿Cómo producir en tres segundos la lista de todos los mp3 incluidos en un árbol de directorios?

En el símbolo de sistema de Windows das la orden compuesta:

dir J:\public /s /b /o:ng | find /i ".mp3" > publicmp3.txt && notepad publicmp3.txt

Donde J:\public es el directorio desde el cual querés comenzar a buscar mp3s.

La lista queda ordenada primero por ruta y luego por nombre de archivo.

Claro que esta técnica no sirve de mucho si los archivos mp3 no tienen nombres descriptivos del tipo "artista - título", en ese caso es mejor generar la lista a partir de las etiquetas.

Ahora, que pasa si en nuestra colección de música también tenemos archivos en otros formatos como Ogg Vorbis, FLAC, Windows Media o RealAudio, y queremos generar una lista que contenga éstos junto con los mp3?

Como el comando find sólo admite una cadena a buscar por vez, en el símbolo de sistema de Windows daremos las siguientes órdenes que previamente concatenaremos con el operador "&&":

dir J:\public /s /b /o:ng > publicmusicdir.txt
find /i ".mp3" publicmusicdir.txt > publicmusicfiles.txt
find /i ".ogg" publicmusicdir.txt >> publicmusicfiles.txt
find /i ".flac" publicmusicdir.txt >> publicmusicfiles.txt
find /i ".ra" publicmusicdir.txt >> publicmusicfiles.txt
sort publicmusicfiles.txt > publicmusicfilessorted.txt
notepad publicmusicfilessorted.txt


Si quiere reusar los comandos anteriores para buscar en otros directorios, u otras computadoras, puede hacer lo siguiente:
  1. abre un nuevo documento de texto;
  2. pega en él los comandos anteriores, tal como están, sin necesidad de concatenarlos;
  3. reemplaza "J:\public" por "%1", sin comillas;
  4. salvamos el documento como archivo por lotes, con extensión .bat.
Cuando quiera usar el archivo por lotes, abre el símbolo de sistema en el directorio en que se encuentre y da la orden:

miprograma.bat C:\ruta\carpeta

Donde C:\ruta\carpeta es la ruta completa al directorio desde donde quiere empezar a buscar archivos de música.