wuwei
2025-06-13 e8c9c0ca7e6c307243c158fd529c59c5a3717f2f
local/www/cgi-bin/state/query-device
@@ -10,26 +10,30 @@
# 定义要操作的文件
file="/tmp/device_status"
# 生成临时文件
temp_file=$(mktemp)
delete_pattern=$(mktemp)
cat $file
# 获取需要删除的行号范围(前一行+当前行+后三行)
awk '/^[[:space:]]*"id"[[:space:]]*:[[:space:]]*"25[67]"[[:space:]]*,/ {
    start = NR - 1 > 0 ? NR - 1 : 1
        end = NR + 3
            for (i = start; i <= end; i++)
                    print i
                    }' "$file" | sort -nu > "$delete_pattern"
exit
# # 生成临时文件
# temp_file=$(mktemp)
# delete_pattern=$(mktemp)
# # 获取需要删除的行号范围(前一行+当前行+后三行)
# awk '/^[[:space:]]*"id"[[:space:]]*:[[:space:]]*"25[67]"[[:space:]]*,/ {
#     start = NR - 1 > 0 ? NR - 1 : 1
#         end = NR + 3
#             for (i = start; i <= end; i++)
#                     print i
#                     }' "$file" | sort -nu > "$delete_pattern"
                    
                    # 执行过滤并显示结果
                    awk 'NR == FNR {del[$1]; next} !(FNR in del)' "$delete_pattern" "$file" | tee "$temp_file"
#                     # 执行过滤并显示结果
#                     awk 'NR == FNR {del[$1]; next} !(FNR in del)' "$delete_pattern" "$file" | tee "$temp_file"
                    
                    # 可选:如果要直接修改原文件,取消以下注释
                    # mv "$temp_file" "$file"
#                     # 可选:如果要直接修改原文件,取消以下注释
#                     # mv "$temp_file" "$file"
                    
                    # 清理临时文件
                    rm "$delete_pattern" "$temp_file"
#                     # 清理临时文件
#                     rm "$delete_pattern" "$temp_file"