Подтвердить что ты не робот

Как выполнять системные команды?

Как я могу выполнить команды, специфичные для системы, и получить их ответ в Clojure? Например, допустим, что мы находимся на машине Linux, как я могу вызвать top или free, и получить их результаты для дальнейшей обработки?

4b9b3361

Ответ 2

Вы можете использовать метод Java Runtime.exec следующим образом:

(import 'java.lang.Runtime)

(. (Runtime/getRuntime) exec "your-command-line-here")

Метод Runtime.exec возвращает объект Process, который можно запросить для получения стандартного вывода и т.д. по мере необходимости.

Ответ 3

Если вы хотите получить немного больше в терминах абстракций (хотя и не так высоко), я бы рекомендовал Conch, так как Я нашел, что он делает очень читаемый код.