Se você usar uma solicitação HTTP HEAD, somente os cabeçalhos serão retornados.
Aqui está uma abordagem simplificada (supondo que você tenha uma lista de URLs).
limiar = expr 100 \* 1024
for url in ${list_of_urls} ; do
size='curl -s --head ${url} | grep 'Content-Length:' | cut -d ' ' -f 2'
if [ ${size} -gt ${threshold} ] ; then
curl -s ${url}
fi
done