随笔分类 -  lua

摘要:server.lua #!/usr/bin/lualocal socket = require("socket")host, port = "127.0.0.1", 9090server = assert(socket.bind(host, port))ack = "ack\n"while true 阅读全文
posted @ 2018-05-09 15:27 hbg-rohens 阅读(3284) 评论(1) 推荐(0) 编辑
摘要:需要用到两个函数: (1)math.randomseed(N): 接收一个整数N作为随机序列种子 (2)math.random([n, [m]]): 这个函数有三种用法,分别是不跟参数,此时产生(0,1)之间的随机浮点数;有一个参数n,产生1到n之间的整数;有2个参数n和m,产生n到m之间的随机整数 阅读全文
posted @ 2018-05-07 13:59 hbg-rohens 阅读(3722) 评论(0) 推荐(0) 编辑
摘要:注册到lua的方式有两种,一种是lua解释器,如果支持动态链接,使用动态链接机制,将函数接口编译成动态链接库,然后将动态链接库放到lua的C路径(LUA_CPATH)中,然后在lua文件中直接使用 require "xxx",这句话会使主机编写的动态链接库链接到lua,并寻找xxx,将模块注册到pa 阅读全文
posted @ 2018-04-24 16:45 hbg-rohens 阅读(359) 评论(0) 推荐(0) 编辑
摘要:io.read(...) 从文件中读取内容,还有另外一种写法就是 file:read() 后面可以跟的读取方式有: (1) "n" 读取一个数字,这是唯一一个返回数字而不是字符串的格式 (2) "a" 从当前位置开始剩余的所有字符串,如果在文件末尾,则返回空串"" (3) "l" 读取下一行内容,如 阅读全文
posted @ 2017-12-19 17:16 hbg-rohens 阅读(4041) 评论(0) 推荐(0) 编辑
摘要:代码中有一段如下: local date = os.date("*t", set) if date then luci.sys.call("date -s '%04d-%02d-%02d %02d:%02d:%02d'" %{ date.year, date.month, date.day, dat 阅读全文
posted @ 2017-12-04 09:32 hbg-rohens 阅读(400) 评论(0) 推荐(0) 编辑
摘要:在 lua 脚本中常用的包含某个文件就是 require 函数。 例如: #!/usr/bin/lua // 表明使用的是lua脚本,像shell脚本一样 local http = require("socket.http") local json = require("luci.json") 有时 阅读全文
posted @ 2017-11-06 17:10 hbg-rohens 阅读(1331) 评论(0) 推荐(0) 编辑
摘要:设置语言的流程一、关联的配置文件/etc/config/luci查看配置文件内容如下:root@hbg:/# cat /etc/config/luci config core 'main' option mediaurlbase '/luci-static/openwrt.org' option r 阅读全文
posted @ 2016-04-07 14:14 hbg-rohens 阅读(2724) 评论(0) 推荐(0) 编辑
摘要:页面上配置的“保存&应用”功能的实现:最终调用到/etc/config/ucitrack的配置文件。 例如配置无线时,对应ucitrack配置文件中的config network option init network list affects dhcp list affects radvd con 阅读全文
posted @ 2016-04-06 10:52 hbg-rohens 阅读(7859) 评论(2) 推荐(1) 编辑
摘要:time 和 date 两个函数在lua中实现所有的时钟查询功能。 函数time在没有参数时返回当前时钟的数值。(在许多操作系统中,该数值是距离某个特定时间的秒数)。 date是time的一种“反函数”,将数值转换为年月日时分秒 使用格式字符"*t",创建一个时间表。 temp = os.date( 阅读全文
posted @ 2016-04-01 15:07 hbg-rohens 阅读(326) 评论(0) 推荐(0) 编辑
摘要:read函数从当前输入文件读取串,由它的参数控制读取的内容: "*all” 读取整个文件 "*line" 读取下一行 "*number" 从串口中转换出一个数值 num 读取num个字符到串 io.read("*all")函数从当前位置读取整个输入文件,如果当前位置在文件末尾,或者文件为空,函数将返 阅读全文
posted @ 2016-04-01 14:01 hbg-rohens 阅读(726) 评论(0) 推荐(0) 编辑
摘要:文件位于: ../feeds/luci/modules/admin-full/src/luci-bwc.c 功能: Very simple bandwidth collector cache for LuCI realtime graphs 主要用于绘画实时信息图使用,一个简单的流量收集缓存。 使用 阅读全文
posted @ 2016-03-01 16:59 hbg-rohens 阅读(995) 评论(0) 推荐(0) 编辑
摘要:使用方法如下: root@openwrt:/# luci-bwcUsage: luci-bwc [-t timeout] -i ifname // ifname为接口名字 luci-bwc [-t timeout] -r radiodev luci-bwc [-t timeout] -c luci- 阅读全文
posted @ 2016-02-24 13:53 hbg-rohens 阅读(2423) 评论(0) 推荐(0) 编辑
摘要:os.date() 返回 XX/XX/XX XX:XX:XX 月/日/年 时:分:秒os.time() 返回的是从1970年1月1日到现在的经过的秒数。例如:print(os.date())print(os.time())结果:01/19/16 09:09:461453165786 阅读全文
posted @ 2016-01-19 09:14 hbg-rohens 阅读(603) 评论(0) 推荐(0) 编辑
摘要:LuCI使用controller目录下的lua脚本中的index函数来构造了一个dispatch树。cgi环境变量PATH_INFO会被用在dispatch树种,例如cgi-bin/luci/foo/bar/baz 会被解析为 foo.bar.baz(在index函数中应该写为function in... 阅读全文
posted @ 2016-01-16 14:32 hbg-rohens 阅读(356) 评论(0) 推荐(0) 编辑
摘要:lua支持的所有字符类. 任意字符%a 字母%c 控制字符%d 数字%l 小写字母%p 标点字符%s 空白符%u 大写字母%w 字母和数字%x 十六进制数字%z 代表0的字符上面字符类的大写形式标识小写所代表的集合的补集,例如:%A代表非字母的字符。print(... 阅读全文
posted @ 2016-01-13 10:12 hbg-rohens 阅读(175) 评论(0) 推荐(0) 编辑
摘要:entry()函数,第一个参数是定义菜单的显示(Virtual path)。第二个参数定义相应的处理方式(target)。alias是指向别的entry的别名,from调用的某一个view,cbi调用某一个model,call直接调用函数。第三个参数是菜单的文本,直接添加string不会国际化,_(... 阅读全文
posted @ 2015-10-12 10:32 hbg-rohens 阅读(1180) 评论(0) 推荐(0) 编辑