Shell脚本检查工具的实现方法技术

技术编号:37332953 阅读:35 留言:0更新日期:2023-04-21 23:11
本发明专利技术涉及Shell脚本检查工具的实现方法,包括如下步骤:将语句依次解析为各种词法单元,通过状态机的状态转移来判断词法单元的类型,得到各词法单元的类型包括前置命令、前置命令选项、前置命令选项、命令、命令选项和命令选项参数;将类型涉及到前置命令、命令和命令选项的词法单元保存到命令结构体中;根据规则配置文件对命令结构体的内容进行匹配,针对匹配成功的语句,返回该语句在Shell脚本中的位置及内容。本发明专利技术为服务器提供了多方面、定制化、可靠的稳定性检查工具,解决了由于生产主机环境比较复杂,权限无法控制,检查Shell脚本的低效率问题,并通过自定义命令检查规则,提高了脚本自动化检查的准确性,保障Shell脚本安全稳定在服务器上运行。本安全稳定在服务器上运行。本安全稳定在服务器上运行。

【技术实现步骤摘要】
Shell脚本检查工具的实现方法


[0001]本专利技术涉及运维脚本检测
,具体涉及Shell脚本检查工具的实现方法。

技术介绍

[0002]随着信息技术的发展,信息系统的复杂程度不断增加,需要管理的服务器也在逐渐增多,因此对系统运维提出更高的要求。运维脚本(Shell)作为一种常见的运维操作手段,面临多种安全风险。自动化运行的脚本极容易因操作人员的疏忽产生不可逆的系统损坏甚至是系统攻击行为,从而导致服务器无法正常运行等一系列不可预料的损失。面对数量庞大、安全要求极高的服务器,需要消耗大量的人力物力对运行在服务器上的运维脚本进行巡检和整改工作,避免高危风险命令的运行,时间和人力成本过于高昂 。
[0003]此外,由于多人协同开发,运维脚本的来源广、缺少同一的标准等原因,加上运维人员疏忽、人工审计或者通过正则匹配解析来检测脚本内容等方案极容易出现漏判、误判等现象。现有技术方案的问题在于缺乏对脚本内容进行深度解析的、运维人员可进行自定义匹配规则的脚本程序检查方案。因此,本专利旨在提供一种脚本程序检查方案,能够实现全方面自动化的稳定性检本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.Shell脚本检查工具的实现方法,其特征在于,包括如下步骤:步骤S1:通过语法树将语句依次解析为各种词法单元,按照顺序将所有词法单元输入状态机,通过状态机的状态转移来判断词法单元的类型,得到各词法单元的类型包括前置命令、前置命令选项、前置命令选项参数、命令、命令选项和命令选项参数;其中,前置命令选项包括前置命令长选项及前置命令短选项,命令选项包括命令短选项及命令长选项;步骤S2:针对步骤S1中所判断的词法单元的类型,将类型涉及到前置命令、命令和命令选项的词法单元保存到命令结构体中;步骤S3:根据规则配置文件对命令结构体的内容进行匹配,针对匹配成功的语句,返回该语句在Shell脚本中的位置及内容。2.如权利要求1所述的Shell脚本检查工具的实现方法,其特征在于,所述步骤S1中,状态机的初始转移条件是先判断当前语句中是否存在前置命令语句,若识别到前置命令语句则顺次判断前置命令语句中的词法单元类型,待前置命令语句中的所有词法单元识别结束后,再识别命令语句中的词法单元类型。3.如权利要求2所述的Shell脚本检查工具的实现方法,其特征在于,所述步骤S1中,状态机通过如下方法识别前置命令语句中的词法单元类型:步骤S11:从第一个词法单元起,判断当前词法单元是否为无参数的前置命令短选项,如果是,则直接判断下一个词法单元类型,如果不是,跳转至步骤S12;步骤S12:判断当前词法单元是否为有参数的...

【专利技术属性】
技术研发人员:王千里谌志华李城宏
申请(专利权)人:麒麟软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1