這個庫通過表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 : %.2f\n", 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();
end
t2 = os.time();
print(os.difftime(t2, t1));
輸出:
2
os.execute ([command])
功能:相當于C的system函數,返回系統狀態碼
例如:
復制代碼 代碼如下:
os.execute("pause")
輸出:
按任意鍵繼續. . .
os.exit (復制代碼 代碼如下:
)
功能:相當于C的exit函數,終止主程序,code為返回值
例如:
[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("USERDOMAIN"))
print(os.getenv("SystemRoot" ))
print(os.getenv("TEMP"))
輸出:
復制代碼 代碼如下:
RDEV
C:\WINDOWS
nil
C:\Program Files
C:\Documents and Settings\baiyun\Application Data
C:\Documents and Settings\All Users
C:\Program Files\Common Files
BAIYUN
baiyun
C:\Documents and Settings\baiyun
C:\WINDOWS\system32\cmd.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~1\baiyun\LOCALS~1\Temp
os.remove (filename)
功能:刪除文件或一個空目錄,若函數調用失敗則返加nil加錯誤信息
os.rename (oldname, newname)
功能:更改一個文件或目錄名,若函數調用失敗則返加nil加錯誤信息
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()
功能:返回一個臨時文件名
您可能感興趣的文章:- Lua中的一些常用函數庫實例講解
- Lua中的常用函數庫匯總
- Lua中的數學庫總結
- 簡介Lua腳本與Redis數據庫的結合使用
- Lua教程(十六):系統庫(os庫)
- Nginx+lua 實現調用.so文件