Lendo argumentos da linha de comando

Lua:
Lendo argumentos da linha de comando

Como Fazer:

-- salve o script como saudacao.lua
-- para rodar: lua saudacao.lua João

local nome = arg[1]  -- Captura o primeiro argumento da linha de comando
if nome then
    print("Olá, " .. nome .. "!")
else
    print("Olá, mundo!")
end

Saída esperada se o nome foi fornecido:

Olá, João!

Saída esperada se nenhum nome foi fornecido:

Olá, mundo!

Detalhando

Historicamente, a habilidade de passar argumentos de linha de comando tem suas raízes nos primórdios da computação, onde a interação com programas era feita majoritariamente por texto. Lua, seguindo essa convenção, disponibiliza os argumentos através da tabela global arg.

Alternativas para leitura de argumentos podem incluir a solicitação de entrada do usuário durante a execução do programa ou lendo de um arquivo. Quanto aos detalhes de implementação, o índice 0 do arg contém o próprio script, e os índices positivos contam os argumentos passados, enquanto que os índices negativos contêm qualquer argumento de opção vindo antes do script na linha de comando.

Veja Também