Lua 之os库
标准os库
os.rename(oldname, newname)
文件重命名;
os.remove(filename)
删除一个文件
os.execute(cmd)
os.execute可运行一条系统命令,类似于C语言的system函数。
os.execute("mkdir /tmp/cq")
os.exit(code)
中止当前程序的执行,code参数默认值为true。
os.getenv(variable)
返回环境变量的值,如果不存在,返回nil。
print(os.getenv('HOME')) -- /root
print(os.getenv('ROOT')) -- nil
os.time(tb)
返回一个指定时间点的UNIX时间戳,如不带参数调用的话,就返回当前时间点的UNIX时间戳。
print(os.time())
print(os.time{year=, month=, day=, hour=})
参数table的字段包括:
year |
年份 |
month |
01-12 |
day |
01-31 |
hour |
00-23 |
min |
00-59 |
sec |
00-59 |
isdst |
布尔值,true表示夏令时 |
其中,year、month、day 三个字段是必须的,其它字段默认取 12:00:00。
os.date(format, sec)
os.data 是os.time 的反函数,它将一个UNIX时间戳转换成可读的字符串形式,如果省略第2个参数,默认返回当前时间点的日期。。
为了生成一个日期table,可以使用格式字符串"*t",例如:
tb = os.date("*t") for k,v in pairs(tb) do
print(k,v)
end
输出:
hour
min
wday
day
month
year
sec
yday
isdst false
而对于其它格式字符串,os.date 会将日期格式化为一个字符串,这个字符串是传入格式字符串的一个复制,但其中的某些特殊标记被替换成了时间和日期信息。所有的标记都以"%"开头,并伴随一个字符,例如:
print(os.date()) -- Tue Oct 28 13:57:39 2014
print(os.date('today is %A, in %B')) -- today is Tuesday, in October
print(os.date('%x',os.time()-** )) -- 10/21/14
下面列出了所有的标记及其含义:
%a |
星期简写,如Wed |
%A |
星期全称,如Wednesday |
%b |
月份简写,如Sep |
%B |
月份全称,如September |
%c |
日期和时间,如09/16/14 13:43:08 |
%d |
一个月中的第几天,01-31 |
%H |
24小时制中的小时数,00-23 |
%I |
12小时制中的小时数,01-12 |
%j |
一年中的第几天,001-366 |
%M |
分钟数,00-59 |
%m |
月份数,01-12 |
%p |
上午(am)或下午(pm) |
%S |
秒数,00-59 |
%w |
一星期中的第几天,0-6 |
%x |
日期,如 09/16/14 |
%X |
时间,如13:47:20 |
%y |
两位数的年份,如14 |
%Y |
完整的年份,如2014 |
%% |
字符% |
os.difftime(t2, t1)
返回从t1到t2的时间跨度值。
os.clock()
函数os.clock 返回当前CPU时间的秒数,一般可用于计算一段代码的执行时间
local x = os.clock()
local s =
for i=,^ do s = s + i end print(string.format("elapsed time: %.2f\n", os.clock() - x))
最新文章
- JavaScript学习笔记之string
- HTML5 Canvas 高仿逼真 3D 布料图案效果
- BZOJ1500 维修数列
- C语言中的内存压缩技术
- KMP模式匹配 三(弦)
- Mongodb语法总结
- JavaScript的第一次小结
- ASP.NET没有魔法——ASP.NET OAuth、jwt、OpenID Connect
- HBase 数据库检索性能优化策略--转
- async await详解
- centos7的内核区别
- Codeforces Round #523 (Div. 2) Solution
- UnityEngine.SerializeField &; System.Serializable
- Oracle 截取指定长度的字符
- 简单是Jedis实例(相对连接池而言)
- 神经病院Objective-C Runtime入院第一天——isa和Class
- C/C++——[01] 程序的基本框架
- LOJ #6282. 数列分块入门 6-分块(单点插入、单点查询、数据随机生成)
- 前端基础-HTML标记语言
- USACO Section1.5 Superprime Rib 解题报告
热门文章
- Spring注解@PostConstruct与@PreDestroy
- Echarts-画叠加柱状图,双折线图
- 数据库开发基础-SQl Server 主键、外键、子查询(嵌套查询)
- UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别
- 绘制图形与3D增强技巧(二)----直线图元之点画
- Android studio:Groovy 与 Gradle 基础【三】
- BZOJ 1112: [POI2008]砖块Klo
- wpf中textbox与textblock有什么区别
- Bzoj1449 [JSOI2009]球队收益
- [NOIP2014] 提高组 洛谷P2038 无线网络发射器选址