Как выполнить команду оболочки в Opa?

Я не мог найти в API ничего, что позволило бы мне выполнить команду оболочки, что-то на линии того, что делает система или exec. Является ли использование интерфейса внешних функций единственным способом для достижения этой цели в настоящее время?

2 ответа

Решение

Вы можете добавить это в свой код:

 exec = %%bslSys.process.exec%% : string, string -> string

Эта функция была добавлена ​​в Stdlib.System (import stdlib.system) от build 739

Да, и это выбор дизайна, а не ограничение. Выполнение команд оболочки может быть очень опасным с точки зрения безопасности; в Opa безопасность имеет первостепенное значение, и поэтому мы решили не раскрывать ее пользователям. Если вам это действительно нужно (и вы знаете, что делаете), тогда вам будет очень легко представить одну из функций Ocaml Sys для вашей программы через FFI.

Другие вопросы по тегам