check_php_md5.sh
· 1.8 KiB · Bash
Raw
#!/bin/bash
CHKSUM_DIR="${CHKSUM_DIR:-/tmp/}"
CHKSUM_FILE="${CHKSUM_FILE:-files.checksum}"
CHECK_DIR="${CHECK_DIR:-/var/www}"
FIND_FILTER="${FIND_FILTER:--type f -name *.php}"
if [ ! -f "${CHKSUM_DIR}/${CHKSUM_FILE}" ]; then
find ${CHECK_DIR} ${FIND_FILTER} -exec md5sum "{}" + > ${CHKSUM_DIR}/${CHKSUM_FILE}
else
md5sum --quiet -c ${CHKSUM_DIR}/${CHKSUM_FILE} || echo ""
TMPDIR=$(mktemp -d /tmp/d.XXXXXX)
trap 'rm -rf "${TMPDIR}"' EXIT
find ${CHECK_DIR} ${FIND_FILTER} -exec md5sum "{}" + > ${TMPDIR}/${CHKSUM_FILE}
if [ $(diff -Nur ${CHKSUM_DIR}/${CHKSUM_FILE} ${TMPDIR}/${CHKSUM_FILE}|wc -l) -gt 0 ]; then
echo "PHP Files have changes, please investigate!"
echo "To reset this detection, please remove ${CHKSUM_DIR}/${CHKSUM_FILE}"
echo "and re-run this script!"
echo "These files have changed:"
echo "======================================================================"
diff -Nur ${CHKSUM_DIR}/${CHKSUM_FILE} ${TMPDIR}/${CHKSUM_FILE}
fi
fi
| 1 | #!/bin/bash |
| 2 | |
| 3 | CHKSUM_DIR="${CHKSUM_DIR:-/tmp/}" |
| 4 | CHKSUM_FILE="${CHKSUM_FILE:-files.checksum}" |
| 5 | CHECK_DIR="${CHECK_DIR:-/var/www}" |
| 6 | FIND_FILTER="${FIND_FILTER:--type f -name *.php}" |
| 7 | |
| 8 | if [ ! -f "${CHKSUM_DIR}/${CHKSUM_FILE}" ]; then |
| 9 | find ${CHECK_DIR} ${FIND_FILTER} -exec md5sum "{}" + > ${CHKSUM_DIR}/${CHKSUM_FILE} |
| 10 | else |
| 11 | md5sum --quiet -c ${CHKSUM_DIR}/${CHKSUM_FILE} || echo "" |
| 12 | TMPDIR=$(mktemp -d /tmp/d.XXXXXX) |
| 13 | trap 'rm -rf "${TMPDIR}"' EXIT |
| 14 | find ${CHECK_DIR} ${FIND_FILTER} -exec md5sum "{}" + > ${TMPDIR}/${CHKSUM_FILE} |
| 15 | if [ $(diff -Nur ${CHKSUM_DIR}/${CHKSUM_FILE} ${TMPDIR}/${CHKSUM_FILE}|wc -l) -gt 0 ]; then |
| 16 | echo "PHP Files have changes, please investigate!" |
| 17 | echo "To reset this detection, please remove ${CHKSUM_DIR}/${CHKSUM_FILE}" |
| 18 | echo "and re-run this script!" |
| 19 | echo "These files have changed:" |
| 20 | echo "======================================================================" |
| 21 | diff -Nur ${CHKSUM_DIR}/${CHKSUM_FILE} ${TMPDIR}/${CHKSUM_FILE} |
| 22 | fi |
| 23 | fi |