Lua中os库详细介绍
这篇文章主要介绍了Lua中os库详细介绍,本文详细讲解了OS库中的常用方法,分别对参数做出了解释,有的给出了示例,需要的朋友可以参考下
这个库通过表os实现 os.clock () 功能:返回一个程序使用CPU时间的一个近似值 例如:
复制代码 代码如下:
local x = os.clock(); print(os.clock()) local s = 0; for i = 1,100000000 do ????? s = s + i; end print(string.format("elapsed time : %.2fn",os.clock() - x)); 输出:
复制代码 代码如下:
0 elapsed time : 2.55 os.date ([format [,time]]) 功能:返回一个按format格式化日期、时间的字串或表
复制代码 代码如下:
t = os.date("*t",os.time()); for i,v in pairs(t) do ????? print(i,v); end 输出:
复制代码 代码如下:
hour? 14 min?? 58 wday? 2 day?? 10 month? 8 year? 2009 sec?? 18 yday? 222 isdst? false 对于其它的格式字符串,os.date会将日期格式化为一个字符串 例如:
复制代码 代码如下:
print(os.date("today is %A,in %B"))????? -->today is Tuesday,in May print(os.date("%x",906000490))?????????? -->09/16/1998 所有格式化字符串如下:
复制代码 代码如下:
?
%a????? 一星期中天数的简写????????????????????? (Wed) %A????? 一星期中天数的全称????????????????????? (Wednesday) %b????? 月份的简写????????????????????????????????? (Sep) %B????? 月份的全称????????????????????????????????? (September) %c????? 日期和时间?????????????????????????????????? (09/16/98 23:48:10) %d????? 一个月中的第几天????????????????????????? (16)[0 ~ 31] %H????? 24小时制中的小时数????????????????????? (23)[00 ~ 23] %I????? 12小时制中的小时数?????????????????????? (11)[01 ~ 12] %j????? 一年中的第几天???????????????????????????? (259)[01 ~ 366] %M????? 分钟数?????????????????????????????????????? (48)[00 ~ 59] %m????? 月份数?????????????????????????????????????? (09)[01 ~ 12]???? %P????? "上午(am)" 或 "下午(pm)"?????????????? (pm) %S????? 秒数????????????????????????????????????????? (10)[00 ~ 59] %w????? 一星期中的第几天???????????????????????? (3)[0 ~ 6 = 星期天 ~ 星期六] ?%W 一年中的第几个星期 0 ~ 52 os.difftime (t2,t1) 功能:返回t1到t2相差的秒数 例如:
复制代码 代码如下:
t1 = os.time(); for i = 0,10000000 do ?os.time(); end t2 = os.time(); print(os.difftime(t2,t1)); 输出: 2 os.execute ([command]) 功能:相当于C的system函数,返回系统状态码 例如:
复制代码 代码如下:
os.execute("pause") 输出: 按任意键继续. . . os.exit (
复制代码 代码如下:
)
功能:相当于C的exit函数,终止主程序,code为返回值 例如: os.getenv (varname)- 功能:返回当前进程的环境变量varname的值,若变量没有定义时返回nil 例如:
复制代码 代码如下:
print(os.getenv("USERDOMAIN")) print(os.getenv("SystemRoot")) print(os.getenv("Os2LibPath")) print(os.getenv("ProgramFiles" )) print(os.getenv("APPDATA" )) print(os.getenv("ALLUSERSPROFILE" )) print(os.getenv("CommonProgramFiles" )) print(os.getenv("COMPUTERNAME" )) print(os.getenv("USERNAME")) print(os.getenv("USERPROFILE" )) print(os.getenv("ComSpec")) print(os.getenv("LOGONSERVER" )) print(os.getenv("NUMBER_OF_PROCESSORS" )) print(os.getenv("OS")) print(os.getenv("PATHEXT" )) print(os.getenv("PROCESSOR_ARCHITECTURE" )) print(os.getenv("PROCESSOR_IDENTIFIER" )) print(os.getenv("PROCESSOR_LEVEL" )) print(os.getenv("PROCESSOR_REVISION" )) print(os.getenv("USERDOMAIN")) print(os.getenv("SystemRoot" )) print(os.getenv("TEMP")) 输出:
复制代码 代码如下:
RDEV C:WINDOWS nil C:Program Files C:Documents and SettingsbaiyunApplication Data C:Documents and SettingsAll Users C:Program FilesCommon Files BAIYUN baiyun C:Documents and Settingsbaiyun C:WINDOWSsystem32cmd.exe 2 Windows_NT .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.py;.pyw;.wlua x86 x86 Family 15 Model 6 Stepping 5,GenuineIntel 15 0605 RDEV C:WINDOWS C:DOCUME~1baiyunLOCALS~1Temp os.remove (filename) 功能:删除文件或一个空目录,若函数调用失败则返加nil加错误信息 os.rename (oldname,newname) 功能:更改一个文件或目录名,若函数调用失败则返加nil加错误信息 os.setlocale (locale [,category]) 功能:设置程序的当前设置,函数返回最新的值,失败则返回nil os.time ([table]) 功能:按table的内容返回一个时间值(数字),若不带参数则返回当前时间table的字段:
复制代码 代码如下:
? year,month,day,hour,min,sec,isdst 例如:
复制代码 代码如下:
print(os.time()); -->1249887340 print(os.time({year=1970,month=1,day=1,hour=0})); -->10500 os.tmpname() 功能:返回一个临时文件名 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |