Introduction au Lua/Fonctions OS
Apparence
Un module Lua-Scribunto pour Mediawiki, est une page de l'espace de nom "Module" qui utilise une table comme variable locale pour stocker ses fonctions et variables mais aussi pour renvoyer la réponse à la fin du processus[1].
Le chapitre bibliothèques Lua, étudie les fonctions intégrées au language et communément regroupées en librairies ou bibliothèques. Cette leçon vous apprendra comment utiliser les Librairie système d'exploitation Lua, dans vos scripts.
Prérequis
[modifier | modifier le wikicode]Cette leçon suppose que vous ayez assimilé la leçon Tables.
Créer un script Lua avec...
[modifier | modifier le wikicode]- Accéder au Module:Sandbox.
- Supprimer le code existant.
- Ajouter le code suivant et enregistrer la page:
local p = {}
function p.osclock()
return ';clock\n:' .. os.clock() .. '\n'
end
function p.osdate()
return ';date\n:' .. os.date() .. '\n'
end
function p.osdifftime()
local t1 = {year = 2014, month = 1, day = 1, hour = 0, min = 0, sec = 0, isdst = false}
local t2 = {year = 2014, month = 12, day = 31, hour = 23, min = 59, sec = 59, isdst = false}
return ';difftime\n:' .. os.difftime(os.time(t2), os.time(t1)) .. '\n'
end
function p.ostime()
return ';time\n:' .. os.time() .. '\n'
end
return p
Tester votre nouveau script
[modifier | modifier le wikicode]- Rendez-vous sur "votre page de test".
- Ajouter le code suivant et enregistrer la page:
{{#invoke:Sandbox|osclock}} {{#invoke:Sandbox|osdate}} {{#invoke:Sandbox|osdifftime}} {{#invoke:Sandbox|ostime}}
Le résultat doit correspondre à ceci
[modifier | modifier le wikicode]
- clock
- 0.003786627
- date
- Sat 28 Dec 2013 03:20:55 AM UTC
- difftime
- 31535999
- time
- 1388200855
Comprendre le nouveau script
[modifier | modifier le wikicode]os.clock()
retourne le montant approximatif du temps nécessaire au micro-processeur pour exécuter le script.os.date()
retourne la date courante.local t1 = {year = 2014, month = 1, day = 1, hour = 0, min = 0, sec = 0, isdst = false}
définit une variable localet1
en tant que table avec les valeurs date et temps données.isdst = false
indique la valeur temps n'est pas ...daylight savings time...
local t2 = {year = 2014, month = 12, day = 31, hour = 23, min = 59, sec = 59, isdst = false}
définit une variable localet2
en tant que table avec les valeurs date et temps données.os.difftime(os.time(t2), os.time(t1))
retourne la différence en seconde entret1
ett2
.os.time()
retourne le temps (l'heure) courant(e) en secondes.
Conclusion
[modifier | modifier le wikicode]Félicitation! Vous êtes capable de créer, tester et comprendre un script Lua qui utilise les fonctions de la bibliothèque OS. Continuez en choisissant une autre bibliothèque de fonctions Lua.
Voir aussi
[modifier | modifier le wikicode]Références
[modifier | modifier le wikicode]