如何在Lua中获取表的命令行参数?

时间:2018-06-08 06:35:36

标签: lua

我试图将命令行参数传递为Lua$ lua test.lua 5 1 8,它给出了输出为1 2 3而不是5 1 8.我尝试的代码如下所示,主要目标是,我需要将这些数字排序为1 5 8.我可以使用" sort"仅用于表的命令。

a = {}
for i = 1, #arg do

    table.insert(a, arg[i])

end

for x in pairs(a)do

    print(x)

end

这里缺少什么?请指教。

1 个答案:

答案 0 :(得分:1)

无需构建arg。命令行解释器lua已经为您完成了这项工作。

$ cat test.lua
for i,v in ipairs(arg) do
    print(i,v)
end

$ lua test.lua 5 1 8
1   5
2   1
3   8

您的代码无效,因为您只打印表格中的(在这种情况下是数字索引),而不是