Pasear por el árbol de directorios

Temas sobre programación ( php, c, sql, html, perl, python, ruby, java, bash, etc ) y recursos ( herramientas, frameworks, hosting, cms, etc )

Moderadores: akodo, maiku

Responder
rafrey
Forista Nuevo
Forista Nuevo
Mensajes: 2
Registrado: Sab Oct 30, 2010 7:54 pm

Pasear por el árbol de directorios

Mensaje por rafrey » Sab Oct 30, 2010 8:12 pm

Hola, soy nuevo en el foro y espero me ayudeis, no se programación pero creo que la pregunta es fácil aunque no para mi.
No me funciona el siguiente script:
#!/bin/bash
base=$(pwd)
for folder in $("`find * -type d`")
do
cd $folder
#exec crear_archivos_m3u # insert your code here
echo estoy_en $folder
cd $base
done

la salida es:
[lime@localhost Camel - Discography]$ ./m3u
./m3u: line 33: 1973 - Camel
1974 - Mirage
1976 - Moonmadness
1977 - Rain Dances
1978 - A Live Record
1978 - A Live Record/Disc Two
1978 - A Live Record/Disc One
1978 - Breathless
1979 - I Can See Your House From Here
1980 - The Paris Collection
1981 - Nude
1982 - The Single Factor
1984 - Pressure Points
1984 - Stationary Traveller
1992 - Dust And Dreams
1993 - Echoes
1993 - Echoes/CD2
1993 - Echoes/CD1
1993 - Never Let Go
1993 - Never Let Go/Cd 2
1993 - Never Let Go/Cd 1
1996 - Harbour Of Tears
1997 - 25th Anniversary Compilation
1999 - Rajaz
2000 - Gods Of Light
2002 - A Nod And A Wink: No existe el fichero o el directorio
Gracias de antemano
Avatar de Usuario
hipersayan_x
Forista Legendario
Forista Legendario
Mensajes: 1905
Registrado: Vie Abr 27, 2007 7:00 am
Contactar:

Re: Pasear por el árbol de directorios

Mensaje por hipersayan_x » Dom Oct 31, 2010 12:24 am

Código: Seleccionar todo

#!/bin/bash

find . -type d -name '*' -exec echo {} \; 2>/dev/null
# o podes reemplazar echo {} por crear_archivos_m3u
# {} representa el archivo con directorio relativo el directorio de búsqueda, en este caso el directorio actual "."
No soy un experto en bash, pero creo que así quedaría mejor.
Desarrollo en Qt: Qt Developer Network
Mis proyectos: github | SourceForge.net
rafrey
Forista Nuevo
Forista Nuevo
Mensajes: 2
Registrado: Sab Oct 30, 2010 7:54 pm

Re: Pasear por el árbol de directorios

Mensaje por rafrey » Dom Oct 31, 2010 12:12 pm

Gracias por tu interés pero no me funciona :( . Debería entrar en los directorios pues crear_archivos_mu3 es así:
#!/bin/bash
basename "`pwd`" > tmp.txt
NOME=`cat tmp.txt`
ls *.mp3 > "$NOME.m3u"
#ls *.MP3 > "$NOME.m3u"
rm -f tmp.txt
exit

Gracias, un saludo.
Avatar de Usuario
hipersayan_x
Forista Legendario
Forista Legendario
Mensajes: 1905
Registrado: Vie Abr 27, 2007 7:00 am
Contactar:

Re: Pasear por el árbol de directorios

Mensaje por hipersayan_x » Dom Oct 31, 2010 4:38 pm

Entonces así:

Código: Seleccionar todo

#!/bin/bash

music_dir='./Música'
m3u_file='lista.m3u'

find $music_dir -iname '*.mp3' -exec echo {}>>$m3u_file \; 2>/dev/null
A mí me funciona :)
Desarrollo en Qt: Qt Developer Network
Mis proyectos: github | SourceForge.net
Responder
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje