#!/bin/bash # ====================================================================================== # Script for Scanning Directories with ClamScan at Regular Intervals # ====================================================================================== # : ' Title : ClamCron.sh Directories ALWAYS ignored : --proc --sys --dev --quarantine Action taken for positive results: Moved to a quarantine folder defined in conf file. Usage : Set settings in ClamCron.conf file. Run this script at the frequency you wish with a cronjob. '; #################### LOAD CONF #################### CONF_FILE="$( cd "$( dirname "${BASH_SOURCE[0]}" )/conf/" && readlink -f "ClamCron.conf" )"; ##################### SANITY ##################### if [ ! -f "$CONF_FILE" ]; then echo "Required CONF_FILE.conf was not loaded, please verify it is present and loadable."; exit 1; fi source "$CONF_FILE"; ###################### MAIN ###################### function main() { start_log; echo "" > "$SCRIPT_TMP"; echo_log "$LOG_KICKOFF $SCAN_DIR" nohup $CLAMSCAN_LOC -roi "$SCAN_DIR" \ --exclude-dir="^/proc" \ --exclude-dir="^/sys" \ --exclude="/dev" \ --exclude-dir="quarantine/" \ --move="$QUAR_DIR" \ -l "$SCRIPT_TMP" &>/dev/null; cat "$SCRIPT_TMP" | tee -a "$SCRIPT_LOG"; end_log; } ###################### SUBS ###################### function start_log() { echo -e "$LOG_BEGIN" | tee -a "$SCRIPT_LOG"; } function end_log() { echo -e "$LOG_END" | tee -a "$SCRIPT_LOG"; } function echo_log() { echo -e "\n$1\n" | tee -a "$SCRIPT_LOG"; } ##################### INIT ###################### main; exit 1;