[eside-ghost] Saludos a todos
Sergio
sergios.weblog en gmail.com
Dom Nov 4 12:26:48 CET 2007
Hola Alvaro,
Gracias por tu respuesta. Me han parecido muy interesantes tus
comentarios y los tendré en cuenta cuando haga una revisión del script.
Precisamente la idea es poder aprender cosas nuevas a partir de las
sugerencias de la gente.
Un saludo
El vie, 02-11-2007 a las 13:33 +0100, Alvaro Uría escribió:
> Hola,
>
> Sergio [01/11/07 19:24 +0100] escribió:
> > Hola a todos,
> >
> > Soy nuevo en la lista y quería presentarme y aportar algo. La verdad es
>
> Bienvenido :-)
>
> > El caso es que, en parte fruto de lo que aprendí allí, y en parte con lo
> > que he ido investigando por mi cuenta desde entonces, hace unas semanas
> > terminé de escribir un script de bash que permite generar
> > automáticamente índices HTML de colecciones de comics que tengamos en un
> > ordenador y después grabar los índices y los comics en un CD/DVD con
> > autoarranque.
>
> Mola.
>
> > Estaría encantado de recibir comentarios o sugerencias para poder
> > mejorarlo.
>
> Para ser la primera versión está muy bien. Si ahora quieres refinarlo, a
> parte de lo que te dicen en un comentario en tu blog sobre
> modularizarlo, puedes jugar a eliminar trozos repetidos, e intentar
> llamar el mínimo posible a programas externos (como "find"), o por lo
> menos utilizar otros más livianos (como "basename" o "test").
>
> Lo de eliminar trozos repetidos... por ejemplo,
> En lugar de...
> echo "tal cual" > fichero.html
> echo "foo bar" >> fichero.html
>
> Puedes hacer...
>
> $ cat prueba.sh
> #!/bin/sh
>
> cat<<EOF > prueba.html
> <html>
> <head>prueba</head>
> <body>
> esto es una prueba
> </body>
> </html>
> EOF
>
> $ sh prueba.sh
> $ cat prueba.html
> <html>
> <head>prueba</head>
> <body>
> esto es una prueba
> </body>
> </html>
>
>
> O cuando quieres recoger los ficheros o subdirectorios de un directorio
> (sin recursividad), en lugar de utilizar "find"...
> for fileName in `find "$dirName" -maxdepth 1 -name "*" -type f -printf '%f\n' | sort`
>
> Puedes hacer,
> for fileName in $dirName/*
>
> Y luego recoger el nombredelfichero.extension con `basename $fileName`
>
> Incluso utilizar al principio del "for"...
> "test ! -f $fileName && continue" para seguir con el siguiente elemento
> encontrado en el bucle cuando no es un fichero.
>
> Para el caso de los directorios, "test ! -d $dir".
>
> (man test, man basename)
>
> Luego, una norma de estilo en el mundo UNIX suele ser que los scripts no
> superen los 80 caracteres por línea (por aquello del tamaño de las
> consolas tty).
>
> Cosas como "cut --delimiter" se puede sustituir por "cut -d", etc. O:-)
>
>
> > Gracias por lo que aprendí y un saludo.
>
> Gracias a ti por compartir lo aprendido.
>
> Saludos,
> _______________________________________________
> eside-ghost mailing list
> eside-ghost en deusto.es
> https://listas.deusto.es/mailman/listinfo/eside-ghost
Más información sobre la lista de distribución eside-ghost