Скажите, что я хочу загрузить все общедоступные страницы или создать автономную базу данных на сайте www.psychocats.net. Теперь, как я могу сначала рассчитать общий размер сайта перед началом загрузки?
На основе подобных Вопросов и ответов - получают размер файла файла к wget перед wget-лугом это? - Я сделал сценарий обертки оболочки удара, который сделает точно, в чем Вы нуждаетесь.:)
Последний репозиторий кода мог быть найден на GitHub здесь:
#!/bin/bash
# Info: https://github.com/mariomaric/website-size#readme
# Prepare wget logfile
log=/tmp/wget-website-size-log
# Do the spider magic
echo "### Crawling ${!#} website... ###"
sleep 2s
echo "### This will take some time to finish, please wait. ###"
wget \
--recursive --level=inf \
--spider --server-response \
--no-directories \
--output-file="$log" "$@"
echo "Finished with crawling!"
sleep 1s
# Check if prepared logfile is used
if [ -f "$log" ]; then
# Calculate and print estimated website size
echo "Estimated size: $(\
grep -e "Content-Length" "$log" | \
awk '{sum+=$2} END {printf("%.0f", sum / 1024 / 1024)}'\
) Mb"
# Delete wget log file
rm "$log"
else
echo "Unable to calculate estimated size."
fi
exit
Кроме того, этот ответ помог чрезвычайно: команда Shell для подведения итогов целых чисел, один на строку?