zoukankan      html  css  js  c++  java
  • WAF学习_(1)Lua基础

    0x00:前言

    ngx_lua_waf是一个基于ngx_lua的web应用防火墙。

    地址:https://github.com/loveshell/ngx_lua_waf

    0x01:Lua

    Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。

    其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。

    • 游戏开发
    • 独立应用脚本
    • Web 应用脚本
    • 扩展和数据库插件如:MySQL Proxy 和 MySQL WorkBench
    • 安全系统,如入侵检测系统

    0x02:基础

    (1)基础
    #! /usr/bin/lua
    #! 的作用
    告诉解释器,要用 /usr/bin/lua  解释脚本
    (2)注释

    --  单行注释

    --[[

    多行注释

    多行注释

    --]]

    (3)变量

    Lua 中的变量全是全局变量,那怕是语句块或是函数里,除非用 local 显式声明为局部变量。

    局部变量的作用域为从声明位置开始到所在语句块结束

    a = 123

    布尔变量只有nil和false

    数字0,空字符串都是true

    如果想要删除一个变量,那么给他赋值nil即可

    (4)循环
    #! /usr/bin/lua
    sum = 0
    num = 1
    while num <= 100 do
        sum = sum + num
        num = num + 1
        -- Lua中没有 ++   +=
    end
    print("sum = ",sum)
    
    -- for 循环
    for i = 1,100 do
        sum = sum + 1
    end
    print("sum = ",sum)
    
    --[[  
    if判断
    ~= 是不等于 字符串的拼接操作符“..” io库的分别从stdin和stdout读写,read和write函数 --]] if age == 20 and sex == "Man" then print("男士等于20") elseif age > 20 and sex ~= "Woman" then print("非女士且大于20") else local age = io.read() print("Your age is "..age) end
    (5)函数

    function function_name(argument1,......)

      function_body

      return rusult

    end

    --[[ 函数返回两个值的最大值 --]]
    function max(num1, num2)
    
       if (num1 > num2) then
          result = num1;
       else
          result = num2;
       end
    
       return result;
    end
    -- 调用函数
    print("两值比较最大值为 ",max(10,4))
    print("两值比较最大值为 ",max(5,6))
  • 相关阅读:
    Java基础-四要素之一《继承》
    Java基础-四要素之一《多态》
    Java基础-四大特性理解(抽象、封装、继承、多态)
    Java基础-父类-子类执行顺序
    Java基础--重写(Overriding,覆盖)-重载(Overloading)
    Java基础-数据类型转换
    Java基础-转义字符
    Java基础-数据类型int,short,char,long,float,double,boolean,byte
    算法-科学计算法
    Java基础-JVM堆与栈
  • 原文地址:https://www.cnblogs.com/liqik/p/12419513.html
Copyright © 2011-2022 走看看