Lendo argumentos da linha de comando

Ruby:
Lendo argumentos da linha de comando

Como Fazer:

Para pegar os argumentos, você acessa o array ARGV que o Ruby fornece. Veja como isso funciona:

# salve este script como hello.rb
argumentos = ARGV
puts "Número de argumentos: #{argumentos.size}"
argumentos.each_with_index do |argumento, indice|
  puts "Argumento #{indice+1}: #{argumento}"
end

Execute o script na linha de comando assim:

ruby hello.rb Oi Mundo isso é Ruby

Saída esperada:

Número de argumentos: 4
Argumento 1: Oi
Argumento 2: Mundo
Argumento 3: isso
Argumento 4: é
Argumento 5: Ruby

Mergulho Profundo:

Ler argumentos de linha de comando é uma prática tão antiga quanto os próprios sistemas operacionais. No Ruby, ARGV é um array especial para isso, mas existem outras ferramentas como OptionParser e gemas como Thor para gerenciar argumentos mais complexos. Por baixo dos panos, quando seu script Ruby começa a rodar, o interpretador já populou ARGV com os argumentos passados, sem a necessidade de chamada de inicialização especial.

Veja Também:

Para se aprofundar ainda mais nesse assunto, confira:

  • Um guia para o OptionParser, útil para lidar com argumentos de linha de comando mais complexos: Ruby Docs - OptionParser
  • Uma documentação sobre a gema Thor, uma boa alternativa para criar interfaces de linha de comando: Thor GitHub repository