mg
d7dd0ef313
zed defaults zed syntax scrub syntax sanoid mit ts health syntax arc syntax tmux syntax smart syntax restic handler restic syntax postfix syntax chrony syntax muster script mit ts muster syntax motd meta motd syntax smb syntax f2b syntax moreutils als standardsoftware rasdaemon + cv4pve. date durch ts ersetzt dokuwiki defaults dokuwiki syntax cv4 handler entfernt apt manage sources: / in var apt install packages syntax apcupsd syntax acng defaults acng syntax Co-authored-by: Michael Grote <michael.grote@posteo.de> Reviewed-on: mg/ansible#65 Co-Authored-By: mg <mg@noreply.git.mgrote.net> Co-Committed-By: mg <mg@noreply.git.mgrote.net>
44 lines
988 B
Bash
44 lines
988 B
Bash
#!/bin/bash
|
|
{{ file_header | default () }}
|
|
#####################
|
|
## https://www.tothenew.com/blog/foolproof-your-bash-script-some-best-practices/
|
|
set -o nounset
|
|
set -o errexit
|
|
# trap ctrl-c and call ctrl_c()
|
|
trap ctrl_c INT
|
|
|
|
function ctrl_c() {
|
|
echo "** Trapped CTRL-C"
|
|
}
|
|
|
|
for i in `seq 1 5`; do
|
|
sleep 1
|
|
echo -n "."
|
|
done
|
|
#####################
|
|
# https://forum.rclone.org/t/bash-script-cronjob-for-automating-rclone-sync/13526/2
|
|
LOCKDIR=${HOME}/.cache
|
|
# Get an exclusive lock or exit
|
|
function exlock() {
|
|
exec {lock_fd}>${LOCKDIR}/$(basename $0).lock
|
|
flock -nx "$lock_fd"
|
|
if [[ $? == 1 ]]; then
|
|
exit 1
|
|
fi
|
|
}
|
|
# Cleanup lock file and exit
|
|
function unlock() {
|
|
rm "${LOCKDIR}/$(basename $0).lock"
|
|
[[ -n $1 ]] && exit $1
|
|
exit
|
|
}
|
|
#####################
|
|
# Damit prueft ob das Script ob es schon laeuft
|
|
exlock
|
|
#####################
|
|
HIER BEFEHLE EINSETZEN!
|
|
|
|
echo x | ts '%Y-%m-%d - %H-%M-%S'
|
|
#####################
|
|
#Hiermit wird die Lockdatei geloescht
|
|
unlock
|