Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- scpsl=/home/steam/steam/scp
- start=`date +%s`
- echo "[`date '+%Y-%m-%d %H:%M:%S'`] Starting to clean logs..."
- if [ -n $1 ]
- then
- server=$1
- else
- server=scp*
- fi
- for dir in $scpsl/servers/$server
- do
- echo "[`date +%H:%M:%S`] Processing server: $dir"
- for file in $dir/logs/*SCP*.txt
- do
- echo "[`date +%H:%M:%S`] Reading file for spam: $file"
- echo "[`date +%H:%M:%S`] Removing empty lines..."
- sed -i.bak "/^$/d" $file
- sed -i.bak "/^ *$/d" $file
- echo "[`date +%H:%M:%S`] Reading from StackTraces.txt list: $scpsl_servers/StackTraces.txt"
- while read raw
- do
- line="$(echo "$raw" | sed -e 's/[]\/$*.^|[]/\\&/g')"
- echo "[`date +%H:%M:%S`] Removing line from file: $line"
- sed -i.bak "/$line/d" $file
- done<$scpsl/StackTraces.txt
- echo "[`date +%H:%M:%S`] Reading from Regex.txt list: $scpsl_servers/Regex.txt"
- while read line
- do
- echo "[`date +%H:%M:%S`] Removing regular expression from file: $line"
- sed -i.bak "/$line/d" $file
- done<$scpsl/Regex.txt
- done
- done
- end=`date +%s`
- echo "[`date '+%Y-%m-%d %H:%M:%S'`] Finished cleaning log files."
- diff=$(($end - $start))
- echo "Cleaning logs took $(($diff / 60 / 60)) hours $(($diff / 60 % 60)) minutes and $(($diff % 60)) seconds."
- read -p "Press Enter to exit the script... " STOP
Add Comment
Please, Sign In to add comment