¿Conocer tamaño de archivo en internet?

Iniciado por sReOn_1R, 2 Noviembre 2010, 22:56 PM

0 Miembros y 1 Visitante están viendo este tema.

sReOn_1R

Hola me gustaría poder hacer un shell script en que si un archivo de internet es mayor de X bytes,se descargue,y si no,no.
Pero..¿¿como podría conocer el tamaño de un archivo si no ha sido descargado??
Gracias





sReOn_1r

JuszR

Se me ocurre usar ftp size nombredelarchivo y despues hacer un if-else y wget.
- No programming language is perfect. There is not even a single best language; there are only languages well suited or perhaps poorly suited for particular purposes. [Herbert Mayer]

sReOn_1R

Gracias pero lo he probado y no funciona porque los archivos que me interesan son videos por el protocolo RTMP y ftp size me dice que es un protocolo no válido.
Para descargar lo que hago es con rtmpdump para hacer un volcado en vez de descargarlo con wget.
¿Alguna otra solucion?
Gracias





sReOn_1r

Foxy Rider

Simple, el tamaño lo podés saber leyendo el header, esto podés hacerlo con curl ...
Código (bash) [Seleccionar]
curl --silent --dump-header - http://tinyogg.com/files/aCK8T.ogv | head -10

con eso capás el header de todo y después podés fijarte ahí Content-Length para hacer con el tamaño lo que quieras..  ahora, si querés decidir si bajar o no un fichero en base al tamaño,podés usar el flag --max-filesize, cosa que si el archivo pasa un tamaño, el archivo no se baja (retornando 63 como código de error según la manpage), eso sí, no siempre se sabe el tamaño ... ahí es otro tema ...

Saludos.

P.S : esto va para Scripting ....