astrXbian/zen/cron_VRFY.sh

56 lines
2.1 KiB
Bash
Raw Permalink Normal View History

2020-12-12 01:26:39 +01:00
#!/bin/bash
########################################################################
# Author: Fred (support@qo-op.com)
# Version: 2020.03.21
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
########################################################################
MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
ME="${0##*/}"
echo '
########################################################################
# \\///
# qo-op
############# '$MY_PATH/$ME'
########################################################################
2021-09-06 01:04:57 +02:00
# Activate / Desactivate ASTROPORT cron_MINUTE.sh job
2020-12-12 01:26:39 +01:00
########################################################################'
# Get crontab
crontab -l > /tmp/mycron
2021-09-06 01:04:57 +02:00
2020-12-12 01:26:39 +01:00
# DOUBLE CHECK (awk = nawk or gawk -i ?)
2021-09-06 01:04:57 +02:00
# Remove any previous line containing "SHELL & PATH"
# awk -i inplace -v rmv="cron_MINUTE" '!index($0,rmv)' /tmp/mycron
awk -i inplace -v rmv="SHELL" '!index($0,rmv)' /tmp/mycron
awk -i inplace -v rmv="PATH" '!index($0,rmv)' /tmp/mycron
crontest=$(cat /tmp/mycron | grep -F 'cron_MINUTE.sh')
2020-12-12 01:26:39 +01:00
if [[ ! $crontest ]]; then
2021-09-06 01:04:57 +02:00
## HEADER
[[ ! $(cat /tmp/mycron | grep -F 'SHELL') ]] && echo "SHELL=/bin/bash" > /tmp/newcron
[[ ! $(cat /tmp/mycron | grep -F 'PATH') ]] && echo "PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin" >> /tmp/newcron
2021-02-16 12:29:39 +01:00
cat /tmp/mycron >> /tmp/newcron
2021-09-06 01:04:57 +02:00
# ADD cron_MINUTE.sh line
2021-03-06 21:03:23 +01:00
echo "* * * * * /bin/bash $MY_PATH/../cron_MINUTE.sh 2>&1>/dev/null" >> /tmp/newcron
2021-02-16 12:29:39 +01:00
crontab /tmp/newcron
sudo systemctl enable ipfs
sudo systemctl start ipfs
2021-09-06 01:04:57 +02:00
echo "ASTROPORT is ON"
2020-12-12 01:26:39 +01:00
else
2021-09-06 01:04:57 +02:00
## HEADER
[[ ! $(cat /tmp/mycron | grep -F 'SHELL') ]] && echo "SHELL=/bin/bash" > /tmp/newcron
[[ ! $(cat /tmp/mycron | grep -F 'PATH') ]] && echo "PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin" >> /tmp/newcron
## REMOVE cron_MINUTE.sh line
cat /tmp/mycron | grep -Ev 'cron_MINUTE.sh' >> /tmp/newcron
crontab /tmp/newcron
sudo systemctl stop ipfs
sudo systemctl disable ipfs
2021-09-06 01:04:57 +02:00
echo "ASTROPORT is OFF"
2020-12-12 01:26:39 +01:00
fi
2021-09-06 01:04:57 +02:00
2020-12-12 01:26:39 +01:00
# Clean
2021-09-06 01:04:57 +02:00
rm -f /tmp/mycron /tmp/newcron
2020-12-12 01:26:39 +01:00
exit 0