offlineimap_sync.sh: add script for cronjob

This commit is contained in:
Johannes Rothe 2018-05-18 19:49:55 +02:00
parent 18f1fca059
commit 9e8b0dd0bc

27
offlineimap_sync.sh Executable file
View File

@ -0,0 +1,27 @@
#!/bin/bash
# sync offlineimap if you have connection to the internet
# and you can ping your imap server successfully.
# shamelessly stolen from
# https://hobo.house/2015/09/09/take-control-of-your-email-with-mutt-offlineimap-notmuch/
imapserver=$(cat ~/.offlineimaprc | grep remotehost | awk '{print $3}')
imapactive=$(ps -ef | grep '[o]fflineimap' | wc -l)
netactive=$(ping -c3 $imapserver >/dev/null 2>&1 && echo up || echo down)
mailsync="/usr/bin/offlineimap"
# kill offlineimap if active, sometimes it hangs
case $imapactive in
'1')
killall offlineimap && sleep 5
;;
esac
# Check that you can access the SMTP server
case $netactive in
'up')
$mailsync
;;
'down')
:
;;
esac