MastodonHelp/web/clitools/maintain/crawl.bash

61 lines
1.8 KiB
Bash
Raw Normal View History

2022-12-03 14:48:14 +01:00
#!/bin/bash
if [ -z "$1" ]; then
>&2 echo "Sintassi: crawl.bash <directory in cui stanno crawl.php ecc.> [dopeers]"
exit 1
elif [ ! -d "$1" ]; then
>&2 echo "«$1» non esiste o non è una directory, muoio."
exit 1
fi
cd "$1"
MAILCFG="../conf/mail.conf"
2022-12-03 14:48:14 +01:00
LOGF="crawl.log"
MAILF="mail"
mailmta=`cat "$MAILCFG"|grep -P '^mta='|sed -e 's/^mta=//' -e 's/^"//' -e 's/"$//'`
mailfrom=`cat "$MAILCFG"|grep -P '^from='|sed -e 's/^from=//' -e 's/^"//' -e 's/"$//'`
mailto=`cat "$MAILCFG"|grep -P '^to='|sed -e 's/^to=//' -e 's/^"//' -e 's/"$//'`
# $1: oggetto del messaggio; $2: file col corpo del messaggio
function domail {
echo "" | s-nail -q "$2" -s "$1" -S v15-compat -S from="$mailfrom" -S smtp-use-starttls -S mta="$mailmta" "$mailto"
}
# $1: comando; $2: logfile per l'output del comando
function logcmd {
init="$(date)"
echo "$init: eseguo «$1»" >> $LOGF
$1 &> $2
2022-12-03 14:48:14 +01:00
ec=$?
endt="$(date)"
echo -n "$endt: fine esecuzione di «$1»: " >> $LOGF
if [ $ec -eq 0 ]; then
echo "riuscita!" >> $LOGF
#domail "Lesecuzione di «$1» è riuscita! :-)" "Ciao, lesecuzione di «$1», cominciata $init e finita $endt, è riuscita senza prubblemi :-)"
else
echo "ERRORE: $ec" >> $LOGF
tail -n 20 $2 >> $LOGF
tail -n 20 $2 > $MAILF
domail "Lesecuzione di «$1», cominciata $init e finita $endt, NON È RIUSCITA (exit code: $ec) :-(" "$MAILF"
fi
echo "++++++++++++++++++++++" >> $LOGF
}
#logcmd "grep pippo gigi" "grepa.log"
#logcmd "grep pippo bibi" "grepb.log"
#exit
logcmd "php mustool.php updstats" "mustool.updstats.log"
if [ "$2" == "dopeers" ]; then
logcmd "php peerscrawl.php -e peerscrawl.exclude -E" "peerscrawl.log"
logcmd "php crawler.php -p peers" "crawler.log"
2022-12-03 14:48:14 +01:00
else
logcmd "php crawler.php" "crawler.log"
2022-12-03 14:48:14 +01:00
fi
logcmd "php mustool.php shuffle clean optimize" "mustool.shuffle-clean-optimize.log"
exit 0