Lua:
Komennoriviparametrien lukeminen
How to:
Miten tehdään:
-- tallenna.lua
-- Otetaan komentoriviparametrit talteen
-- Käytetään globaalia 'arg' taulukkoa
-- 'arg' sisältää komentoriviparametrit (arguments)
if #arg < 1 then
print("Anna vähintään yksi argumentti.")
else
for i, param in ipairs(arg) do
print("Argumentti " .. i .. ": " .. param)
end
end
-- Käytä: lua tallenna.lua moikka maailmaKäytä seuraavaa komentoa komentorivillä:
lua tallenna.lua hei terveSaadaksesi seuraavaa tulostetta:
Argumentti 1: hei
Argumentti 2: terveDeep Dive
Syväsukellus:
Lua otti käyttöön globaalin arg taulukon komentoriviparametrien käsittelyyn. Ennen Lua 5.0-versiota arg oli osa *arg globaalia muuttujaa tai saatettiin lukea suoraan funktiolle annetuista argumenteista. Taulukon indeksi 0 sisältää skriptin nimen, ja itse argumentit alkavat indeksistä 1.
Vaihtoehtoisesti voi käyttää standardikirjastoja, kuten lapp tai penlight, jotka tarjoavat monipuolisempaa käsittelyä, kuten optioanalysointia ja oletusarvoja.
Komentoriviparametrien lukemiseen liittyy joskus turvallisuusnäkökohtia, kuten syötteiden validointi ja escapen käsitteleminen, jotta vältetään injektio- ja suorituskykyongelmia.
See Also
Katso myös:
- Lua Users Wiki on command-line arguments: http://lua-users.org/wiki/CommandLineArguments
- Argparse Lua module for handling command-line options: https://github.com/mpeterv/argparse
- “Programming in Lua” by Roberto Ierusalimschy: https://www.lua.org/pil/25.3.html