文件创建php监控 防止创建php 禁止创建php

zblog1年前zblog问题解答107
#!/bin/bash
################################################################
# 要监控的目录列表
WATCH_DIRS=(
    "/www/wwwroot/edu.cn/"
    "/www/wwwroot/th.com/data"
    "/www/wwwroot/te.com.cn/data"
    "/www/wwwroot/js.net/data"     
)
# 日志文件路径
LOG_FILE="/www/bug_fix/logfile.log"
# 检查并监控每个目录
for WATCH_DIR in "${WATCH_DIRS[@]}"; do
    # 检查目录是否存在
    if [ ! -d "$WATCH_DIR" ]; then
        echo "目录 $WATCH_DIR 不存在。" >> "$LOG_FILE"
        continue
    fi

    # 使用inotifywait监控目录中的文件创建事件
    inotifywait -m -r -e create --format '%w%f' "$WATCH_DIR" | while read NEWFILE; do
        # 获取文件扩展名
        EXTENSION="${NEWFILE##*.}"
        
        # 如果文件扩展名是.php,则删除该文件
        if [ "$EXTENSION" == "php" ]; then
            TIMESTAMP=$(date +"%Y-%m-%d %H:%M:%S")
            echo "检测到PHP文件创建: $NEWFILE,正在删除..." >> "$LOG_FILE"
            rm -f "$NEWFILE" && echo "[$TIMESTAMP] 已删除: $NEWFILE" >> "$LOG_FILE"
        fi
    done &
done
# 等待所有后台进程完成
wait
################################################################


相关文章

python 并发执行 python 带参数的函数 比如 aaa(1) 参数是变化的 如从1到10 怎么并发 执行 a(1) 到A(10)

在Python中,你可以使用concurrent.futures模块中的ThreadPoolExecutor或ProcessPoolExecutor来并发执行函数。以下是一个使用ThreadPoolE...

页面全屏 弹出框

<!DOCTYPE html> <html lang="en"> <head>    &...

Nginx规则 重定向

location ~* /show/.*\.(?:jpg|webp) {   rewrite ^/show/(.*)$ /$1&...

ai提示词 生成文章标题

ai提示词 生成文章标题

你是一个专业的文章标题生成专家,深刻的知道一个好的标题对于内容的重要性。 要求: 理解给定内容是属于哪一个行业,并且思考这篇内容是在解决用户的什么问题' 标题必须利于SEO优化,必须完整...

ZBLOG定义系统常、变量 用户级别 定义文章类型 定义文章状态

<?php /*zb_system/function/c_system_defined.php  * 定义系统常、变量  */ /*  *&...