erlang プログラム (ejabberd) を実行しています。場合によっては、実行中の erlang プログラムに erl シェルを接続してヘルス チェックを行う必要があります。
私はこれらすべてをスクリプト化しようとしていますerl -sname r -remsh ....
.erlangシェルでコマンドを入力してからコマンドを実行するのではなく、bashシェルからそのコマンドを直接実行して出力を取得する方法を探しています. これは可能ですか?
Odobenus の回答の後、私はこの小さなスクリプトを書きました。
#!/usr/bin/env escript
%%! -sname r -setcookie `cat ~ejabberd/.erlang.cookie`
main([]) ->
Res = rpc:call(ejabberd@xmpp,mnesia,info,[]),
io:format("~p~n",[Res]).
問題は、これらが接続に使用するパラメーターとまったく同じであるにもかかわらず、「ノードダウン」エラーが発生することですerl
。erl -sname r -remsh ejabberd@xmpp -setcookie `cat ~ejabberd/.erlang.cookie`