Я хочу сделать
lua prog.lua arg1 arg2
из командной строки
Внутри prog.lua, я хочу сказать, например
print (arg1, arg2, '\n')
Lua, кажется, не имеет argv[1] и т.д. и методы, я видел контакт с параметрами командной строки, кажется, являются незрелыми и / или громоздкими. Я пропускаю что-то?
Вам не хватает вектора arg
, который содержит нужные элементы в arg [1]
, arg [ 2]
и так далее:
% lua -i -- /dev/null one two three
Lua 5.1.3 Copyright (C) 1994-2008 Lua.org, PUC-Rio
> print(arg[2])
two
>
Дополнительная информация в разделе руководства Lua по автономному Lua (спасибо Майлзу!).
В дополнение к таблице arg
, ...
содержит аргументы (arg [1] и выше), используемые для вызова сценария.
% lua -i -- /dev/null one two three Lua 5.1.3 Copyright (C) 1994-2008 Lua.org, PUC-Rio > print(...) one two three