我認爲最簡單的方法是加入遠程shell。剛開始erl
與-remsh Node
參數
$ erl -sname foo
Erlang R13B04 (erts-5.7.5) [source] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.7.5 (abort with ^G)
([email protected])1>
另一端:
$ erl -sname bar -remsh '[email protected]'
Erlang R13B04 (erts-5.7.5) [source] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.7.5 (abort with ^G)
([email protected])1>
另一種選擇是使用erl
(按^G
)
$ erl -sname bar
Erlang R13B04 (erts-5.7.5) [source] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.7.5 (abort with ^G)
([email protected])1>
User switch command
--> h
c [nn] - connect to job
i [nn] - interrupt job
k [nn] - kill job
j - list all jobs
s [shell] - start local shell
r [node [shell]] - start remote shell
q - quit erlang
? | h - this message
--> r '[email protected]'
--> j
1 {shell,start,[init]}
2* {'[email protected]',shell,start,[]}
--> c
Eshell V5.7.5 (abort with ^G)
([email protected])1>
User switch command
--> j
1 {shell,start,[init]}
2* {'[email protected]',shell,start,[]}
--> c 1
([email protected])1>
注強大的作業控制功能,你必須按Enter
如果您切換回現有shell,則顯示shell提示。
從兩個Erlang應用程序訪問正在運行的Mnesia數據庫的最佳實踐是什麼?向Mnesia羣集添加節點並以這種方式訪問它似乎有點矯枉過正? – 2010-07-28 23:52:31
@Peter:然後使用rpc模塊,如果它在同一個Erlang集羣中,或者當你想通過套接字進行通信時使用lib_chan。 – 2010-07-29 09:33:42
我建議在使用遠程shell時使用-hidden標誌,特別是在處理分佈式網絡時。例如。 erl -sname bar -remsh'foo @ hynek-notebook'-hidden – 2010-09-19 09:21:13