Lua - สิ่งอำนวยความสะดวกของระบบปฏิบัติการ

ในแอปพลิเคชันใด ๆ มักจำเป็นสำหรับการเข้าถึงฟังก์ชันระดับระบบปฏิบัติการและมีให้พร้อมกับไลบรารีระบบปฏิบัติการ รายการฟังก์ชันที่พร้อมใช้งานแสดงอยู่ในตารางต่อไปนี้

ซีเนียร์ ห้องสมุด / วิธีการและวัตถุประสงค์
1

os.clock ()

ส่งกลับค่าประมาณของจำนวนเป็นวินาทีของเวลา CPU ที่ใช้โดยโปรแกรม

2

os.date ([format [, time]])

ส่งคืนสตริงหรือตารางที่มีวันที่และเวลาจัดรูปแบบตามรูปแบบสตริงที่กำหนด

3

os.difftime (t2, t1)

ส่งคืนจำนวนวินาทีจากเวลา t1 ถึงเวลา t2 ใน POSIX, Windows และระบบอื่น ๆ ค่านี้คือ t2-t1

4

os.execute ([command])

ฟังก์ชันนี้เทียบเท่ากับระบบฟังก์ชัน ANSI C มันผ่านคำสั่งที่จะดำเนินการโดยเชลล์ของระบบปฏิบัติการ ผลลัพธ์แรกจะเป็นจริงหากคำสั่งสิ้นสุดลงสำเร็จหรือเป็นอย่างอื่น

5

os.exit ([code [, close])

เรียกใช้ฟังก์ชัน ANSI C เพื่อยุติโปรแกรมโฮสต์ หากรหัสเป็นจริงสถานะที่ส่งคืนคือ EXIT_SUCCESS หากรหัสเป็นเท็จสถานะที่ส่งคืนคือ EXIT_FAILURE; หากรหัสเป็นตัวเลขสถานะที่ส่งคืนจะเป็นตัวเลขนี้

6

os.getenv (varname)

ส่งคืนค่าของตัวแปรสภาพแวดล้อมกระบวนการ varname หรือศูนย์หากไม่ได้กำหนดตัวแปร

7

os.remove (filename)

ลบไฟล์ (หรือไดเร็กทอรีว่างบนระบบ POSIX) ด้วยชื่อที่กำหนด หากฟังก์ชันนี้ล้มเหลวฟังก์ชันนี้จะคืนค่า nil พร้อมด้วยสตริงที่อธิบายข้อผิดพลาดและรหัสข้อผิดพลาด

8

os.rename (oldname, newname)

เปลี่ยนชื่อไฟล์หรือไดเร็กทอรีชื่อ oldname เป็น newname หากฟังก์ชันนี้ล้มเหลวฟังก์ชันนี้จะคืนค่า nil พร้อมด้วยสตริงที่อธิบายข้อผิดพลาดและรหัสข้อผิดพลาด

9

os.setlocale (locale [, category])

ตั้งค่าภาษาปัจจุบันของโปรแกรม โลแคลเป็นสตริงที่ขึ้นกับระบบที่ระบุโลแคล หมวดหมู่เป็นสตริงที่ไม่บังคับซึ่งอธิบายว่าจะเปลี่ยนหมวดหมู่ใด: "ทั้งหมด" "เรียง" "ctype" "การเงิน" "ตัวเลข" หรือ "เวลา" หมวดหมู่เริ่มต้นคือ "ทั้งหมด" ฟังก์ชันจะส่งคืนชื่อของโลแคลใหม่หรือไม่มีหากไม่สามารถใช้การร้องขอได้

10

os.time ([table])

ส่งคืนเวลาปัจจุบันเมื่อเรียกโดยไม่มีอาร์กิวเมนต์หรือเวลาที่แสดงวันที่และเวลาที่ระบุโดยตารางที่กำหนด ตารางนี้ต้องมีฟิลด์ปีเดือนและวันและอาจมีฟิลด์ชั่วโมง (ค่าเริ่มต้นคือ 12), นาที (ค่าเริ่มต้นคือ 0), วินาที (ค่าเริ่มต้นคือ 0) และ isdst (ค่าเริ่มต้นคือศูนย์) สำหรับคำอธิบายของฟิลด์เหล่านี้โปรดดูที่ฟังก์ชัน os.date

11

os.tmpname ()

ส่งคืนสตริงที่มีชื่อไฟล์ที่สามารถใช้สำหรับไฟล์ชั่วคราว ต้องเปิดไฟล์อย่างชัดเจนก่อนใช้งานและลบออกอย่างชัดเจนเมื่อไม่จำเป็นอีกต่อไป

ฟังก์ชันระบบปฏิบัติการทั่วไป

ตัวอย่างง่ายๆโดยใช้ฟังก์ชันทางคณิตศาสตร์ทั่วไปแสดงไว้ด้านล่าง

-- Date with format
io.write("The date is ", os.date("%m/%d/%Y"),"\n")

-- Date and time
io.write("The date and time is ", os.date(),"\n")

-- Time
io.write("The OS time is ", os.time(),"\n")

-- Wait for some time
for i=1,1000000 do
end

-- Time since Lua started
io.write("Lua started before ", os.clock(),"\n")

เมื่อเราเรียกใช้โปรแกรมข้างต้นเราจะได้ผลลัพธ์ที่คล้ายกันดังต่อไปนี้

The date is 01/25/2014
The date and time is 01/25/14 07:38:40
The OS time is 1390615720
Lua started before 0.013

ตัวอย่างข้างต้นเป็นเพียงตัวอย่างทั่วไปบางส่วนเราสามารถใช้ไลบรารี OS ตามความต้องการของเราดังนั้นลองใช้ฟังก์ชันทั้งหมดเพื่อให้คุ้นเคย มีฟังก์ชั่นเช่น remove ซึ่งช่วยในการลบไฟล์ execute ที่ช่วยให้เรารันคำสั่ง OS ตามที่อธิบายไว้ข้างต้น