Rate Script

Dieses Script ermittelt die Anzahl der Benutzer auf dem Minecraft-Server und errechnet damit die Goldrate, die man abdrücken muss, wenn man getötet wurde.

rate.sh
#!/bin/bash
 
accountfile="$1"
ratefile="$2"
 
if [[ $# -lt 2 ]];
then
    echo "Usage: $0 accout-datei rate-datei"
    exit 1
fi
 
anzahl_spieler=$( wc -l "${accountfile}" | cut -d' ' -f1 )
 
res=0
while read line;
do
    _playername=$(echo ${line} | sed -r -n -e 's/(^[^ ]*) .*$/\1/p')
 
    _value=$(echo ${line} | sed -r -n -e 's/.*balance:([0-9]{1,10})\.[0-9]{1} .*/\1/p')
    let _sum=${_sum}+${_value}
done < "${accountfile}"
result=$(echo "scale=1;(${_sum}*3)/(${anzahl_spieler} * 40)" | bc)
 
cat << EOF > $ratefile
NumberOfLines: 1
Line:
  '1': Aktuelle Rate liegt bei $result Goldbarren.
EOF
 
 
#reload von ic
mcontrol.sh /path/to/mcserver_config sendcommand "ic reload" > /dev/null 2>&1
 
_date=$(date --date='now')
echo "Rate @${_date}: ${result}" >> /home/mcserver/rate.log