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))
Lua 之os库的更多相关文章
- Lua 学习之基础篇五<Lua OS 库>
lua os库提供了简单的跟操作系统有关的功能 1.os.clock() 返回程序所运行使用的时间 local nowTime = os.clock() print("now time is ...
- Lua判断OS并添加cpath
Lua判断OS并添加cpath(金庆的专栏)Lua初始化时需要根据OS来设置package.cpath, 如果是Windows系统则添加 ?.dll, 否则添加 ?.so.不然加载错误后缀名的动态库会 ...
- 生成lua的静态库.动态库.lua.exe和luac.exe
前些日子准备学习下关于lua coroutine更为强大的功能,然而发现根据lua 5.1.4版本来运行一段代码的话也会导致 "lua: attempt to yield across me ...
- python基础—sys与os库
python可以用sys库打印环境变量或者查看当前文件的脚本路径,具体代码: import sysprint(sys.path[2])#打印环境变量print(sys.argv)#当前脚本路径 os库 ...
- os库新建文件夹
file.write()可以自动生成文件但不能生成文件夹. os库生成文件夹 # 判断文件夹是否存在(./xxx/xxx) if not isExists: os.makedirs(path) pri ...
- python之os库
python之os库 os.name 判断现在正在实用的平台,Windows 返回 'nt'; Linux 返回'posix' >>> os.name 'nt' os.getcwd( ...
- lua luna工具库
luna工具库 概述 luna库提供了几个lua开发的常见辅助功能: lua/c++绑定 lua序列化与反序列化 变长整数编码,用于lua序列化,当然也可以方便的用于其他场合 这里把代码编译成了动态库 ...
- 使用Lua的扩展库LuaSocket用例
目录结构 LuaSocket 是 Lua 的网络模块库,它可以很方便地提供 TCP.UDP.DNS.FTP.HTTP.SMTP.MIME 等多种网络协议的访问操作. 它由两部分组成:一部分是用 C 写 ...
- OS库的使用
Python中有关OS库的使用 路径操作 os.path.abspath(path) 返回path在当前系统中的绝对路径 os.path.normpath(path) 归一化path的表示形式,统一用 ...
随机推荐
- C#-WinForm-三级联动
三级联动 - 查询地区,选择省份自动显示该省份的市.区县 有如下一个数据库 一.写查询方法 public class ChinaData { SqlConnection conn = null; Sq ...
- C#-WinForm-菜单和工具栏
通用属性: Enabled - 指示是否启用该控件. Visiable - 确定该控件是启用还是隐藏的. Checked - 指示组件是否处于选中状态. 点击事件. 工具箱→菜单和工具栏 1.Cont ...
- iOS的nil,Null,NSNull的使用
今天做项目时,在数组里面取值时,发现里面有NSNull的对象,然后用数组里面对应的对象赋值时出现各种问题,总是报错.后面经过研究和查资料,总算解决了这一问题. nil用来给对象赋值(Objective ...
- 细说new与malloc的10点区别
前言 几个星期前去面试C++研发的实习岗位,面试官问了个问题: new与malloc有什么区别? 这是个老生常谈的问题.当时我回答new从自由存储区上分配内存,malloc从堆上分配内存:new/de ...
- python3 异常处理
什么是异常 Python用异常对象(exception object)来表示异常情况.遇到错误会引发异常,如果异常对象未被处理或者捕捉,程序就会用回溯(traceback)终止执行. Raise语句: ...
- 项目实例——多表关联查询判断A的字段是否在B中,在显示该字段值,不在显示空;B的字段是否在C中,在显示该字段值,不在显示空。
1.需求: (1)三张表A.B.C 三个表id相同,如果A表中的name在B表中的bname中显示aname值,否则显示空:如果C表中的addr在B表中的tel显示addr,否则显示空 2.实现方式 ...
- hive 使用笔记(table format;lateral view)
1. create table 创建一张目标表,指定分隔符和存储格式: create table tmp_2 (resource_id bigint ,v int) ROW FORMAT DELIMI ...
- [cf140e]New Year Garland
Description 用$m$种颜色的彩球装点$n$层的圣诞树.圣诞树的第$i$层恰由$l[i]$个彩球串成一行,且同一层内的相邻彩球颜色不同,同时相邻两层所使用彩球的颜色集合不同. 求有多少种装点 ...
- bzoj2959: 长跑
#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...
- 前端打包/自动化构建工具:gulp
glup可以进行打包,并且可以实现类似/script/test-adsf123.js或者/script/test.js?v=asdf123 参考: http://www.ydcss.com/archi ...