Perl read INI file

FreeBSD FAMP 部署实战:从 rc.d 服务注册到 kqueue+PHP-FPM 深度优化 FAMP(FreeBSD + Apache + MySQL + PHP)是面向高安全、强稳定场景的 Web 栈部署范式,其核心在于深度适配 FreeBSD 独有的系统机制。不同于 Linux 的 systemd/cgroup,FreeBSD 依赖 rc.d 服务注册、kqueue I/O 多路复用、rctl 资源控制与 Capsicum 能力沙箱等原生设施。Apache 的 event MPM 在 kqueue 支持下可承载超 8000 并发,而 PHP-FPM 通过 Unix socket 对接,实现进程 阅读详情

工作中需要处理INI 配置文件,看了下同事写的脚本,处理的比较简单,只解析了需要的那部分,没有对其他部分做出处理,自己重新写了一个,可以把整个文件一次处理完毕,很简单,代码如下:

 

use warnings;
use Data::Dumper;

my $f = 'd:/project/SDI/params.config';
my (%dict,$this);

open FILE,"$f";
while(<FILE>){
    chomp;
    #解释行和空白行跳过不做处理
    if(/^/s*#/ or /^/s*$/){
        next;
    }
    #将[ ]作为头做处理,如有重复将做合并处理
    elsif(/^/s*/[(/w+)/]/s*$/){
        if(exists $dict{$1}){
            $this = $dict{$1};
        }
        else{
            $dict{$1} = {};
            $this = $dict{$1};
        }        
    }
    #定义处理,如有重复将做覆盖处理
    elsif(/^/s*([^ ]+)/s*=/s*([^ ]+)/s*$/){
        ($param,$value) = ($1,$2); #split '=',$_;
        $this->{$param}=$value;
    }
    #不符合INI文件定义则报错
    else{
        print "Line format error: $_";
    }
}

print Dumper %dict;

 

测试文件如下:

#this is testing

[checkFileNums_123]
File_Dir=/home/users/dhu/tmp/xtff
Log_Path=./logs/checkFileNums

[checkFileDate]
File_Dir=/home/users/dhu/tmp/xtff
Log_Path=./logs/checkFileDate

 

上述文件运行结果如下:

$VAR1 = 'checkDoneList';
$VAR2 = {
          'File_Dir' => '/home/users/dhu/tmp/xtff',
          'Log_Path' => './logs/checkDoneList'
        };
$VAR3 = 'checkFileDate';
$VAR4 = {
          'File_Dir' => '/home/users/dhu/tmp/xtff',
          'Log_Path' => './logs/checkFileDate'
        };

LEMP栈协同原理与Ubuntu生产调优实战 LEMP栈(Linux+Nginx+MySQL+PHP)并非软件简单堆叠,而是依赖内核调度、进程通信、资源隔离与数据流协同的完整Web服务链路。其核心原理在于Nginx异步事件模型、PHP-FPM进程管理机制、MySQL InnoDB缓冲池与连接池策略,以及各组件间Unix Socket/TCP通信、文件描述符共享和权限边界控制。技术价值体现在高并发稳定性、低延迟响应与资源利用率优化;典型应用场景包括WordPress博客部署、ThinkPHP老框架迁移、API网关构建及Docker化PHP应用交付。本文聚 阅读详情

相关推荐

从RCE到反弹Shell:原理、实战与防御全解析

远程代码执行是网络安全中的核心漏洞类型,它允许攻击者在目标系统上执行任意命令。其技术原理通常涉及对用户输入的不当处理或系统组件的安全缺陷,使得攻击者能够注入并执行恶意代码。从技术价值看,RCE漏洞的危害性极高,常被用于获取系统初始访问权限。在实际应用场景中,攻击者面临内网隔离或防火墙限制时,常需借助反弹Shell技术建立稳定的远程控制通道。反弹Shell通过重定向标准输入输出到网络套接字,让目标主机主动连接攻击者,从而绕过网络限制。本文聚焦于反弹Shell的实现方法,涵盖Bash、Netcat、Python

weixin_30684743的博客 535

从一道CTF题到实战:手把手复现Perl GET命令执行漏洞(附PHPStudy环境搭建)

本文深入剖析了Perl GET命令执行漏洞的成因与利用方法,基于HITCON 2017的SSRFme题目进行实战复现。通过PHPStudy环境搭建、漏洞原理解析到实战演练,详细演示了从文件读取到命令执行的完整攻击链,并提供了有效的防御方案和安全开发建议。

weixin_30800987的博客 358

Pikachu靶场实战:文件包含漏洞原理、利用与防御详解

文件包含漏洞是Web安全中一种常见的代码注入攻击类型,其核心原理在于应用程序动态包含文件时,未对用户输入的文件路径进行严格校验,导致攻击者能够包含并执行任意文件。从技术实现上看,该漏洞常出现在使用PHP的include、require等函数时,若路径参数可控,攻击者可通过目录遍历、空字节截断等技巧读取敏感文件或执行恶意代码。其技术价值在于揭示了“信任边界”失控的安全风险,是理解服务器端安全模型的重要案例。在应用场景上,文件包含常与文件上传漏洞组合利用,实现从信息泄露到远程命令执行的全链条攻击。本文聚焦于Pi

weixin_34235457的博客 389

Apache mod_rewrite深度解析:请求生命周期与重写机制原理

URL重写是Web服务器处理请求路径的核心能力,其本质是在HTTP请求进入应用层之前,对URI进行解构、匹配与转换。理解重写机制需从Apache请求处理阶段切入——Post-Read-Request与URL-to-File Mapping两大关键节点决定了规则的触发时机与作用范围。mod_rewrite并非简单开关,而是嵌入在底层的条件-动作引擎,依赖RewriteCond与RewriteRule协同实现精准控制,其性能代价与安全边界直接受正则精度、标志位(如[L][QSA][R=301])及环境变量(如%

congbao6525的博客 402

Linux生存地图:从命令执行到系统思维的跃迁

Linux不是命令集合,而是基于‘一切皆文件’哲学构建的操作系统接口体系。其核心原理在于用户空间程序对内核系统调用(如open、stat、chdir)的封装,管道、重定向、进程控制等机制均源于POSIX标准与VFS抽象。理解这一底层逻辑,才能突破‘背命令’困境,实现可验证、可回溯、可迁移的操作能力。它支撑着运维排障、自动化部署、容器运行时及系统可观测性等关键场景——本文聚焦真实任务链路(如误删恢复、CPU定位、rsync同步),带你建立以原理驱动实践的技术直觉。

weixin_30535843的博客 404

从泛微云桥漏洞看文件读取攻击:WAF/IDS防护规则实战设计

目录遍历(Path Traversal)是一种常见的Web安全漏洞,其核心原理在于应用程序未对用户输入的文件路径进行充分校验和规范化处理,导致攻击者可通过构造恶意路径(如../../../etc/passwd)越权读取服务器敏感文件。这类漏洞危害极大,可直接导致配置文件、源码、系统密码等敏感信息泄露,成为进一步渗透的跳板。从防御视角看,除了在应用层实施输入校验与路径白名单等根本性修复外,在边界部署Web应用防火墙(WAF)和入侵检测系统(IDS)并配置精准的防护规则,是构建纵深防御体系、实现主动威胁缓解的关

weixin_30342209的博客 351

perl亲身试验ini---使用perl读写配置文件

以前保存配置信息,都是直接将信息保存到文本文件,每行一条。这样做会导致可读性降低。 如去年课程作业编写的一个“光线追迹”软件,需要读取的数据完全用空格和换行分隔后保存于文本文件,现在想要理解各个数据的含义就只能查看源代码了,幸好当时注释写的非常详细。 又如今年的一个“膜厚计算”软件。因为需要跨程序调用各个信息(cliLABVIEWdll),直接传递参数太复杂,因此将很多的设置项与共

kongjunlongaa的博客 4298

进程间通信的七种方法实战演示!值得收藏!

线程和进程间的通讯(Inter-Process Communication, IPC)是操作系统中的一个重要概念,用于实现不同进程或同一进程中的不同线程之间的数据交换和协调。以下是几个常见的进程间通信的方式:管道、消息队列、共享内存、信号、套接字、信号量、文件映射

十年饮冰,难凉热血,保持热爱,奔赴星海! 2816

Perl 循环读取INI

原本的那个CONFIG模块不太好用,读取指定项目位置倒是还可以,但是如果一旦数量多了以后就不好使用了。 在CPAN上找到了一个比较实用的模块,稍微摸索了一下就知道怎么实用了。给段示例代码,方便以后翻查学习。 #!/usr/bin/perl use Config::Abstract::Ini; use strict; my $file = $ARGV[0]; my $...

weixin_30289831的博客 182

西门子S7-200 SMART PLC控制伺服电机

以下是使用西门子S7-200 SMART PLC控制伺服电机的详细程序框架和配置说明,涵盖硬件接线、PLC配置和基本运动控制逻辑。具体实现需根据伺服电机型号(如松下、三菱、台达等)调整参数。通过以上步骤,可实现伺服电机的基础位置控制。实际应用需根据设备机械参数和伺服驱动器手册调整细节。建议在调试时逐步测试脉冲输出和方向信号是否正常。

CHUXUEZHE8210的博客 6425

音频格式之AAC:(2)AAC封装格式ADIF,ADTS,LATM,extradata及AAC ES存储格式

本文主要1-3部分介绍AAC封装格式ADIF,ADTS和LATM,同时因为从mp4等封装容器有extradata模式,故也第4部分介绍extradata模式。最后第5部分介绍AAC压缩数据存储方式。

littlezls的博客 4936

perl如何处理INI文件

#!/usr/bin/perl#usage:#      my %hash=iniToHash(/tmp/myini.ini);#      print $hash{TITLE}->{Name},"/n";#sub iniToHash{    open(MYINI,$_[0]);    my %hash1;    my $hashref;    while( ){       

大道归一 2721

Modelsim:LPDDR5仿真(含美光仿真模型官方sv&vcs代码)

虽然,三星在设计跟量产上,早于其他家存储产商,但是镁光后来居上了,是业界首家支持全速 LPDDR5 的供应商,并且开发者在做开发的时候,也是用美光颗粒比较多,所以这里就先以美光的仿真模型为主进行仿真。 本工程为美光官方工程,支持Modelsim、VCS、ncverilog三种仿真器仿真。模型破解过,为完整system-verilog代码。

千歌叹尽执夏的博客 1283

perl读取配置文件

sub readConfig($) { my $file = shift; my %config = (); open (CF, " readConfig Reading config file: $file./n"; while () { chomp(); next if (/^/s*#/); next if (/^/s*$/); next unless (/^[^;]+;[^;]+$/); $_ =~ s/^/s*/

Acefei的专栏 6706

C#实现每日定时执行制定程序(附完整源码)

C#实现每日定时执行制定程序(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 866

行人检测模型在海思平台上的部署:从 PyTorch 到 NNIE 深度优化与实践

摘要 本文详细介绍行人检测模型从PyTorch到海思NNIE平台的部署流程。首先分析了行人检测面临的挑战(尺度变化、遮挡、姿态多样性等)及边缘部署的优势(实时性、隐私保护等)。重点阐述了模型转换过程:PyTorch→ONNX→Caffe→NNIE-WK,其中PyTorch转ONNX需注意评估模式设置、虚拟输入匹配、操作集版本选择等关键点。文章旨在帮助开发者在海思3516D芯片上实现高效的行人检测,克服部署过程中的常见问题,最终实现边缘设备的实时目标检测能力。

FJN110的博客 216

Win32汇编教程十三 INI 文件的操作

--------------------------------------------------------------------------------概述在程序中经常要用到设置或者其他少量数据的存盘,以便程序在下一次执行的时候可以使用,比如说保存本次程序执行时窗口的位置、大小、一些用户设置的数据等等,在 Dos 下编程的时候,我们一般自己产生一个文件,由自己把这些数据写到文件中,然后在下

蝈蝈俊.net 2683

【Davinci开发】:MPU(内存保护)

【Davinci开发】:MPU(内存保护)

2209

2026年MySQL安装配置实战指南:从零部署到安全优化

很多开发者在初次接触MySQL时,常常被繁琐的下载、安装和配置过程劝退,尤其是在Windows环境下,从官网选择版本、配置环境变量到初始化服务,每一步都可能遇到意想不到的报错。网上资料虽然多,但往往版本过时或步骤不全,导致跟着教程走却卡在某个环节。 本文将为你提供一份 2026年最新、最全的MySQL安装配置实战指南 。无论你是刚入门数据库的新手,还是需要在本地快速搭建开发环境的老手,都能从零开始,手把手完成MySQL的下载、安装、配置、启动和基础使用。文章将覆盖Windows和Linux(通过Docker

weixin_33713503的博客 353

工业级实战:C#上位机集成YOLO实现多目标跟踪(含数据库存储+报表导出)

推理核心:ONNX Runtime实现C#直接推理YOLO模型,GPU优先+CPU降级适配工业机;跟踪核心:SORT算法轻量级实现多目标跟踪,保证工业场景实时性与稳定性;数据核心:MySQL存储+本地缓存,Excel报表标准化导出,满足工业数据追溯与质检需求;部署核心:模型优化、GPU加速、开机自启,保证工业级7x24小时运行。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 474

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Shell脚本实战:从零到自动化运维,掌握变量、循环与文本处理三剑客

在Linux系统管理与自动化运维领域,Shell脚本是连接命令与自动化任务的核心工具。其本质是通过解释器(如Bash)将一系列命令组织成可重复执行的程序,从而将繁琐的手动操作转化为高效、可靠的自动化流程。这一技术价值在于显著提升运维效率、减少人为错误,并实现任务的标准化与可追溯性。其应用场景广泛覆盖日志处理、文件备份、服务部署、系统监控等日常运维工作。本文聚焦于Shell脚本的实战应用,针对变量定义、引号使用、条件判断、循环控制等核心语法,结合文本处理“三剑客”(grep, sed, awk)的经典用法,深

weixin_33800463的博客 409

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Unix命令行在数据科学中的高效应用与实战指南

Unix命令行是面向文本流和行处理的基础计算范式,其‘做一件事并做好’的哲学与数据科学中探索性分析、日志切片、轻量聚合等任务高度契合。依托grep、awk、sed、sort等原生命令及管道机制,可实现零依赖、低内存、高确定性的流式数据处理,显著降低EDA与临时取数的隐性成本。相比Python或SQL,Unix在原始日志快速过滤、大文件结构化预览、生产环境即时诊断等场景具备不可替代的响应速度与可靠性。本文聚焦数据科学家高频使用的grep正则过滤、awk字段计算、sed流式编辑及sort-uniq频次统计等核心

517

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

grep高级技巧:从基础搜索到高效文本处理的实战指南

在Linux和Unix系统中,文本搜索与处理是日常开发和运维的核心基础。grep作为最常用的命令行工具之一,其基础功能是进行模式匹配和行过滤,但深入掌握其高级选项能极大提升工作效率。理解grep的工作原理,即基于正则表达式引擎进行模式匹配,可以帮助用户从简单的关键词搜索进阶到复杂的文本提取与数据分析。这些高级技巧的技术价值在于将手动、重复的文本处理任务自动化,减少人工干预,提升处理大规模日志和代码库的准确性与速度。在实际应用场景中,如日志分析、代码审查、数据清洗和安全扫描等,合理运用grep的特定选项可以解

weixin_34199405的博客 402

远程命令执行漏洞绕过:从黑名单过滤到白名单防御的攻防实战

在网络安全领域,远程命令执行(RCE)漏洞因其直接控制系统的高风险性,成为攻防对抗的核心焦点。其基本原理是攻击者通过Web应用接口注入恶意命令,利用系统Shell或编程语言函数执行。防御方常采用**关键字过滤**构建黑名单,但这种方法存在固有缺陷:它只能拦截已知的敏感词汇。攻击者则利用Shell解析特性、编程语言动态性及操作系统功能,通过命令拼接、编码混淆、通配符匹配等手段,使恶意指令在运行时动态生成,从而绕过静态检测。这种绕过技术不仅体现了攻防的技术博弈,更揭示了安全工程中**输入验证**的重要性。在实际

xpp02的专栏 472

深度实践:基于CentOS 7的企业级OpenStack底层依赖部署与故障排查全记录

文档核心概要 本文档记录了一份基于 CentOS 7 (el7)​ 的企业级 OpenStack 实验环境构建过程。文档内容主要由零散的系统日志、RPM 安装记录(如 erlang-19.3.6.4、mariadb-10.1.20、rabbitmq-server-3.6.15)以及 OpenStack 服务(Keystone, Ceilometer, Aodh, Barbican)的配置占位符组成。此外,文档还包含了典型的运维报错信息(如 grep、sed语法错误及 ssh-copy-id路径异常)。 关键

2502_92028135的博客 301

中级sed实战:Linux文本流水线的核心能力解析

sed(Stream Editor)是Linux系统中专为文本流处理设计的轻量级编辑器,其核心原理在于基于模式空间的单行/多行流式处理,不加载全文、不维护上下文、不解析结构,仅通过地址范围、替换标志、保持空间等机制实现高效变形。这种‘无状态流水线’特性赋予它在日志清洗、配置批量修改、安全审计等场景中不可替代的技术价值——尤其在Kubernetes YAML处理、Nginx配置运维、Kali渗透测试等高频工程实践中,sed常与grep、awk协同构成文本处理黄金三角。本文聚焦GNU sed与BSD sed的兼

csdn864883的博客 394
上一篇: Perl HTTP 多线程下载合并之换行符错误
下一篇: Text ProgressBar
Bai_Yuanyong
博客等级 码龄24年 46粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值