加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Lua中的操作系统库

发布时间:2020-12-14 21:58:46 所属栏目:大数据 来源:网络整理
导读:这个库通过表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));

这个库通过表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格式化日期、时间的字串或表
若设置time参数,则按time指定的时间格式化,否则按当前时间格式化
参数:
? format:
???????? "!":按格林尼治时间进行格式化。
?     "*t":将返一个带year(4位),month(1-12),day (1--31),hour (0-23),min (0-59),sec (0-61),wday (星期几,星期天为1),yday (年内天数),and isdst (是否为日光节约时间true/false)的带键名的表; 若没有"*t"则返回一个按C的strftime函数格式化的字符串
? 若不带参数,则按当前系统的设置返回格式化的字符串 os.date() <=> os.date("%c")
??
例如:
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
%x????? 日期??????????????????????????????????????????(09/16/98)
%X????? 时间????????????????????????????????????????? (23:48:10)
%y????? 两位数的年份???????????????????????????????(90)[00 ~ 99]
%Y????? 完整的年份?????????????????????????????????(2009)
%%????? 字符串'%'


--------------------------------------------------------------------------------

os.difftime (t2,t1)
功能:返回t1到t2相差的秒数

例如:
t1 = os.time();
for i = 0,10000000 do
?os.time();
t2 = os.time();
print(os.difftime(t2,t1));

输出:
2

--------------------------------------------------------------------------------

os.execute ([command])
功能:相当于C的system函数,返回系统状态码

例如:
os.execute("pause")

输出:
按任意键继续. . .

--------------------------------------------------------------------------------

os.exit ([code])
功能:相当于C的exit函数,终止主程序,code为返回值

例如:
os.exit(1)

--------------------------------------------------------------------------------

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("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
http://www.cnblogs.com/whiteyun/admin/file://rdev1/
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)
功能:更改一个文件或目录名,0)">os.setlocale (locale [,category])
功能:设置程序的当前设置,函数返回最新的值,失败则返回nil
参数:
  locale:一个指定当前设置的字串
      "":一个空字串,当前设置被视为本地设置
     "c":当前设置被视为标准c设置
?     nil:返回category指示设置名的当前值
  category:一个描述要更改的设置名?
???????? "all"[默认],"collate","ctype","monetary","numeric","time"


--------------------------------------------------------------------------------

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()
功能:返回一个临时文件名

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读