--- /dev/null
+All scripts assume the default config format and the default log file structure ( regular `.log` and `.log.1` files, every other log file gzip'ed)
+
+### searchlog
+
+grep all `access.log*` files
+
+### esearchlog
+
+grep all `error.log*` files
+
+### chckip
+
+grep all `access.log*` files and perform reverse IP lookup on IPs from matched entries
+
+### countconn
+
+show connection per minute
--- /dev/null
+#!/bin/sh
+
+SERVER=$(which > /dev/null apache2 && printf "apache2" || which > /dev/null nginx && printf "nginx" || printf "ERROR: server not detected, needs to be set manually")
+
+{ zcat /var/log/"$SERVER"/access.log.*.gz; cat /var/log/"$SERVER"/access.log /var/log/"$SERVER"/access.log.1; } | grep -a "$@" | awk '{print $1}' | sort | uniq | xargs -L 1 host
--- /dev/null
+#!/bin/sh
+
+SERVER=$(which > /dev/null apache2 && printf "apache2" || which > /dev/null nginx && printf "nginx" || printf "ERROR: server not detected, needs to be set manually")
+
+[ "$1" -eq "$1" ] 2>/dev/null && NUM="$1" || NUM=30
+
+cut -d: -f2,3 < /var/log/"$SERVER"/access.log | uniq -c | tail -n"$NUM"
--- /dev/null
+#!/bin/sh
+
+SERVER=$(which > /dev/null apache2 && printf "apache2" || which > /dev/null nginx && printf "nginx" || printf "ERROR: server not detected, needs to be set manually")
+
+{ zcat /var/log/"$SERVER"/error.log.*.gz; cat /var/log/"$SERVER"/error.log /var/log/"$SERVER"/error.log.1; } | grep --color=auto -a "$@"
--- /dev/null
+#!/bin/sh
+
+SERVER=$(which > /dev/null apache2 && printf "apache2" || which > /dev/null nginx && printf "nginx" || printf "ERROR: server not detected, needs to be set manually")
+
+{ zcat /var/log/"$SERVER"/access.log.*.gz; cat /var/log/"$SERVER"/access.log /var/log/"$SERVER"/access.log.1; } | grep --color=auto -a "$@"