最近开发cmdb系统中的批量命令模块,有个需求是要求脚本中不能含有“rm -rf /”命令,如果含有这个命令,前端弹出警告框提示。

这里需要用test方法来测试字符串,符合模式时返回true,否则返回false。

我先从控制台调试一下:

wKioL1eprlmz_FCsAACQf8g53Wg190.png-wh_50

可以看到,匹配OK了。

前端代码如下:

var re = /rm -rf \/$/;  //匹配"rm -rf /"命令
if (re.test('your commands')) {
    alert('您输入的命令含有"rm -rf /"字符,该命令被禁止使用,请务必核对正确再执行!!');
}
else {
    do some cmd
}

页面效果:

wKiom1eps-egsw4tAAbHKBnhzDg956.png-wh_50