Eu suponho que pequenos pacotes não são solicitados para entrada Sim ou Não e não são mostrados com o tamanho após a primeira execução do script . É por isso que seu script provavelmente demora muito tempo e mostra cálculos confusos.
De qualquer forma, escrevi este script para obter sempre o tamanho total em kB
.
#!/bin/bash
LIST="openarena chromium-bsu"
echo n | sudo apt-get install $LIST | grep "disk space" | while IFS=, read a b; do echo $b ; done |
sed 's/,//g' |
while IFS=\ read a b c; do
if [ "$b" == "kB" ]; then echo $a $b;
else
if [ "$b" == "MB" ]; then echo -n $(($a*1024)); echo " kB"
fi
fi
done
produz:
454656 kB
EDIT: Explicação para a primeira sentença sobre tamanho:
Quero dizer que para pequenos pacotes (não me lembro de um limite de tamanho) apt-get
não pergunta para Sim ou Não, então para eles echo N
é inútil para os próximos tempos em que o script está sendo executado porque apt-get
será instale-os e ele mostrará o tamanho do pacote apenas na primeira vez que executar o script, outras vezes você executará o script de tais pacotes pequenos que já estão instalados e você está perdendo seu tamanho no cálculo. Isso é parcialmente responde por que demora muito tempo às vezes.