ERL: выполнить команду erl из оболочки

Вот что я хочу - выполнить следующий мини-скрипт из оболочки bash:

mnesia:change_table_copy_type(schema, node(), disc_copies).

Я пытаюсь выяснить возможности, но не могу найти четкого ответа. Есть опция "-noshell" или "-oldshell", но ни одна из них не говорит, как выполнить какую-либо команду, подобную приведенной выше.

Как я могу это сделать?

1 ответ

Решение

Ты можешь использовать -noshell с -eval "mnesia:change_table_copy_type(schema, node(), disc_copies)" за это. Вам также придется пройти -run init stop после этого, чтобы убедиться, что Erlang VM останавливается после выполнения команды, или VM продолжит работать даже после оценки -eval код.

erl -noshell -eval "mnesia:change_table_copy_type(schema, node(), disc_copies)" -run init stop
Другие вопросы по тегам