Bueno, en estos días me puse a mejorar el script que tengo de descarga, porque la verdad es que quería automatizar del todo las acciones, pero todavía no lo consigo, así que de mientras le meto funcionalidad. Espero que les sirva, ya que supone una buena mejora con respecto a la anterior versión(el tema de los ceros me tenia puesto de quicio) y la toma de argumentos esta mas ordenada a mi parecer.
Aquí lo tienen:
#!/bin/bash
#@autor miniminiyo
#@version 1.4
#mejoras : toma de ceros en formato pagina, toma de datos por consola reestructurado
#script para bajar imagenes
echo 'Nueva estructura'
echo 'url dir pagIni pagFin extension zeros offset'
echo "ej:http://omg.submanga.com/pages/1/232/2320043d7/1.jpg 232 1 31 jpg pedira ceros y offset"
echo "ej:http://omg.submanga.com/pages/1/232/2320043d7/1.jpg 232 1 31 jpg 1 pedira offset"
echo "ej:http://omg.submanga.com/pages/1/232/2320043d7/1.jpg 232 1 31 jpg 3 fairytail-"
#LECTURA DE URL
if [ -z $1 ]; then
read -p "introduzca url " url #recibimos dato
url=$(dirname $url)
echo "La url es ${url}"
else
url=$(dirname $1) #si la hemos metido como primera entrada la cargamos de una desde ahi
fi
#NOMBRE DE CARPETA DONDE SE GUARDARA
if [ -z $2 ]; then
read -p "indique el nombre que quiere dar a la carpeta donde se guardaran los datos " nombre
else
nombre=$2
fi
#ESTA PARTE ES SIEMPRE IGUAL, ENTRAMOS EN EL DIRECTORIO
mkdir $nombre
cd $nombre
#INICIO DE DESCARGA DE PAGINAS
if [ -z $3 ] ; then
read -p "introduzca el inicio (default:0, pulse ENTER si acepta por defecto el inicio) " ini
#COMRPOBAMOS ENTRADA DE INICIO
if [ -z "${ini}" ] ;then
ini=0 #¿0 o 1?
fi
#FIN COMPROBACION EN READ
#SEGUIMOS CON LA ENTRADA POR ARGUMENTO AL SCRIPT
else
ini=$3
fi
#FIN DE DESCARGA DE PAGINAS
if [ -z $4 ] ; then
read -p "introduzca el fin " fin
else
fin=$4
fi
#LECTURA DE EXTENSION
if [ -z $5 ] ; then
read -p "introduzca la extension de la imagen(defaut:jpg, pulse ENTER si acepta por defecto la extension) " extension
#COMPROBAMOS QUE SE HA INTRODUCCIDO UNA EXTENSION
#si no se ha introducido la ponemos por defecto a jpg
if [ -z "${extension}" ] ;then
extension=jpg
fi
else #no esta vacio el $6
extension=$5
fi
#lectura de zeros en el numero 001, 01, 1...
if [ -z $6 ] ; then
read -p "Introduzca la cantidad de ceros que quiere (ej:001=3,01=2,1=1) " zeros
#COMPROBAMOS QUE SE HA INTRODUCCIDO EL TIPO DE CERO
#si no se ha introducido la ponemos por defecto a 1
if [ -z "${zeros}" ] ;then
zeros=1;#por defecto sin relleno de ceros
fi
else #no esta vacio el $6
zeros=$6
fi
#LECTURA DE OFFSET (like url/fairytail...etc..0.jpg) , el offset es hasta el numero
if [ -z $7 ]; then
read -p "Introduzca la variacion hasta la parte numerica si existe, en caso contrario pulse ENTER" offset
if [ -z "${offset}"] ; then
offset=;
fi #fin de mira si hay offset o no
else
offset=$7
fi
#fin si
echo "la extension indicada es ${extension}"
#realizando descarga en directorio actual, ya no sacamos nada a texto
for i in $(seq -s " " -f %0${zeros}g $ini $fin)
do
wget -c ${url}/${offset}${i}.${extension}
done
echo "fin de descarga de archivos"
echo "El nombre del directorio en que se guardo es ${nombre}"
Aquí lo tienen:
#!/bin/bash
#@autor miniminiyo
#@version 1.4
#mejoras : toma de ceros en formato pagina, toma de datos por consola reestructurado
#script para bajar imagenes
echo 'Nueva estructura'
echo 'url dir pagIni pagFin extension zeros offset'
echo "ej:http://omg.submanga.com/pages/1/232/2320043d7/1.jpg 232 1 31 jpg pedira ceros y offset"
echo "ej:http://omg.submanga.com/pages/1/232/2320043d7/1.jpg 232 1 31 jpg 1 pedira offset"
echo "ej:http://omg.submanga.com/pages/1/232/2320043d7/1.jpg 232 1 31 jpg 3 fairytail-"
#LECTURA DE URL
if [ -z $1 ]; then
read -p "introduzca url " url #recibimos dato
url=$(dirname $url)
echo "La url es ${url}"
else
url=$(dirname $1) #si la hemos metido como primera entrada la cargamos de una desde ahi
fi
#NOMBRE DE CARPETA DONDE SE GUARDARA
if [ -z $2 ]; then
read -p "indique el nombre que quiere dar a la carpeta donde se guardaran los datos " nombre
else
nombre=$2
fi
#ESTA PARTE ES SIEMPRE IGUAL, ENTRAMOS EN EL DIRECTORIO
mkdir $nombre
cd $nombre
#INICIO DE DESCARGA DE PAGINAS
if [ -z $3 ] ; then
read -p "introduzca el inicio (default:0, pulse ENTER si acepta por defecto el inicio) " ini
#COMRPOBAMOS ENTRADA DE INICIO
if [ -z "${ini}" ] ;then
ini=0 #¿0 o 1?
fi
#FIN COMPROBACION EN READ
#SEGUIMOS CON LA ENTRADA POR ARGUMENTO AL SCRIPT
else
ini=$3
fi
#FIN DE DESCARGA DE PAGINAS
if [ -z $4 ] ; then
read -p "introduzca el fin " fin
else
fin=$4
fi
#LECTURA DE EXTENSION
if [ -z $5 ] ; then
read -p "introduzca la extension de la imagen(defaut:jpg, pulse ENTER si acepta por defecto la extension) " extension
#COMPROBAMOS QUE SE HA INTRODUCCIDO UNA EXTENSION
#si no se ha introducido la ponemos por defecto a jpg
if [ -z "${extension}" ] ;then
extension=jpg
fi
else #no esta vacio el $6
extension=$5
fi
#lectura de zeros en el numero 001, 01, 1...
if [ -z $6 ] ; then
read -p "Introduzca la cantidad de ceros que quiere (ej:001=3,01=2,1=1) " zeros
#COMPROBAMOS QUE SE HA INTRODUCCIDO EL TIPO DE CERO
#si no se ha introducido la ponemos por defecto a 1
if [ -z "${zeros}" ] ;then
zeros=1;#por defecto sin relleno de ceros
fi
else #no esta vacio el $6
zeros=$6
fi
#LECTURA DE OFFSET (like url/fairytail...etc..0.jpg) , el offset es hasta el numero
if [ -z $7 ]; then
read -p "Introduzca la variacion hasta la parte numerica si existe, en caso contrario pulse ENTER" offset
if [ -z "${offset}"] ; then
offset=;
fi #fin de mira si hay offset o no
else
offset=$7
fi
#fin si
echo "la extension indicada es ${extension}"
#realizando descarga en directorio actual, ya no sacamos nada a texto
for i in $(seq -s " " -f %0${zeros}g $ini $fin)
do
wget -c ${url}/${offset}${i}.${extension}
done
echo "fin de descarga de archivos"
echo "El nombre del directorio en que se guardo es ${nombre}"
No hay comentarios:
Publicar un comentario