Читання аргументів командного рядка

Clojure:
Читання аргументів командного рядка

Як це зробити:

Clojure надає простий спосіб отримання аргументів командного рядка через глобальну змінну *command-line-args*. Ось приклад:

; Запустіть з командного рядка, наприклад: clojure app.clj arg1 arg2
(defn main []
  (println "Аргументи командного рядка:" *command-line-args*))

(main)

Якщо ви запустите вищезазначену програму з аргументами arg1 arg2, то отримаєте наступний вивід:

Аргументи командного рядка: (arg1 arg2)

Поглиблений розбір:

Доступ до аргументів командного рядка є стандартною можливістю багатьох мов програмування, і Clojure не є винятком. У минулому, для цього використовувались різні бібліотеки для розбору аргументів. Зараз, Clojure дає доступ до аргументів через *command-line-args*.

Альтернативи є. Наприклад, можна використовувати бібліотеку tools.cli, яка дозволяє більш детально розбирати аргументи, додавати опції та флаги.

Щодо реалізації, *command-line-args* є лінивим списком усіх аргументів, які були передані в Clojure REPL або до виконуваного файлу. Лінивість допомагає ефективно працювати з потенційно великою кількістю аргументів без необхідності обчислювати їх всі заздалегідь.

Дивись також: