#!/bin/bash resum=0 while getopts 'r:' OPTION; do case "$OPTION" in r) resum=1 ;; ?) echo "utilització: ./website-size.sh [-r (crear un fitxer resum)] example.org" >&2 exit 1 ;; esac done # shift "$(($OPTIND -1))" output="./${!#}.log" sites_output="./${!#}_sites.log" mides_output="./${!#}_mides.log" resum_output="./${!#}_resum.log" year=$(date +"%Y") echo "Analitzant ${!#}..." sleep 1s echo "Pot tardar una estona..." echo "" wget \ --recursive --level=1 \ --spider --server-response \ --no-directories --no-parent \ -e robots=off \ --output-file="$output" "$@" sleep 1s if [ -f "$output" ] then # Calculate and print estimated website size echo "Mida estimada de ${!#}: $(\ grep -e "Content-Length" "$output" | \ awk '{sum+=$2} END {printf("%.0f", sum / 1024)}'\ ) kb" echo "" sleep 1s grep -e "--$year" $output | awk '{printf("%s\n", $3)}' | sort | uniq >> $sites_output sed -i '$ d' $sites_output sed -i '1d' $sites_output if [ $resum = 1 ] then echo "## Resum dels fitxers baixats ##" sleep 1s while read line; do wget --server-response --no-directories --spider -e robots=off --output-file="$mides_output" "$line" echo "$line $(grep -e "Content-Length" $mides_output | awk '{printf("%.2fKb\n", $2 / 1024)}')" rm $mides_output done < $sites_output >> $resum_output fi #grep -e "Content-Length" $output | awk '{printf("%.2fKb\n", $2 / 1024)}' >> $mides_output # echo "## Resum dels fitxers baixats ##" # sleep 1s #echo "$(paste $sites_output $mides_output | uniq)" # Delete wget output file rm "$output" rm "$sites_output" else echo "Unable to calculate estimated size." exit 1 fi exit 0