Elixir:
Odczytywanie argumentów linii poleceń

How to (Jak to zrobić?)

Oto jak w Elixirze możemy odczytać argumenty linii poleceń:

defmodule CliArgs do
  def main(args) do
    case args do
      [] -> 
        IO.puts "Nie podano argumentów!"
      _ -> 
        IO.puts "Oto twoje argumenty:"
        Enum.each(args, &IO.puts/1)
    end
  end
end

CliArgs.main(System.argv())

Uruchamiając program tak:

elixir my_script.exs arg1 arg2 arg3

Dostaniesz wynik:

Oto twoje argumenty:
arg1
arg2
arg3

Deep Dive (Dogłębna analiza)

Argumenty linii poleceń są tak stare jak same systemy operacyjne. W Elixirze odczytujemy je funkcją System.argv(), która zwraca listę argumentów jako stringi.

Alternatywnie można użyć biblioteki OptionParser, która przekształca argumenty w zrozumiały i użyteczny sposób. Umożliwia to np. rozróżnianie opcji od pozostałych argumentów.

Elixir jest językiem funkcjonalnym, więc argumenty są często przekazywane bezpośrednio do funkcji i przetwarzane w sposób funkcjonalny (jak w przykładzie wykorzystującym Enum.each).

See Also (Zobacz również)