-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathwatcher.sh
More file actions
41 lines (32 loc) · 1010 Bytes
/
watcher.sh
File metadata and controls
41 lines (32 loc) · 1010 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#/bin/bash
today=$(date +%Y-%m-%d)
yesterday=$(date -d "yesterday" +'%Y-%m-%d')
# Read the input file and download all the changelogs
while read -r line
do
echo $line
name=${line%,*}
url=${line##*,}
curl -o "logs/$name-$today.txt" "$url"
if ! cmp "logs/$name-$yesterday.txt" "logs/$name-$today.txt" >/dev/null 2>&1
then
echo "<h1>$name</h1>" > logs/$name.diff.txt
echo "" >> logs/$name.diff.txt
diff "logs/$name-$yesterday.txt" "logs/$name-$today.txt" | sed 's/> /<br \/>/' >> logs/$name.diff.txt
echo "" >> logs/$name.diff.txt
fi
done < watchlist.csv
if ls logs/*.diff.txt 1> /dev/null 2>&1
then
echo "To: [email protected]" > mail.txt
echo "Subject: Daily changelog update" >> mail.txt
echo "From: [email protected]" >> mail.txt
echo "Content-Type: text/html" >> mail.txt
echo "MIME-Version: 1.0" >> mail.txt
echo "" >> mail.txt
cat logs/*.diff.txt >> mail.txt
sendmail -vt < mail.txt
rm mail.txt
rm logs/*.diff.txt
fi
rm logs/*-$yesterday.txt