Tôi nghĩ rằng cách dễ nhất là tham gia vào vỏ từ xa. Chỉ cần bắt đầu erl
với -remsh Node
tham số
$ 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>
Một thiết bị đầu cuối:
$ 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>
lựa chọn khác là sử dụng khả năng điều khiển công việc mạnh mẽ của erl
(Nhấn ^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>
Lưu ý rằng bạn phải nhấn Enter
để hiển thị dấu nhắc trình bao nếu bạn đang chuyển về trạng thái hiện tại.
Nguồn
2010-06-26 07:09:05
Cách tốt nhất để truy cập cơ sở dữ liệu Mnesia đang chạy từ hai ứng dụng Erlang là gì? Thêm một nút vào cụm Mnesia và truy cập nó theo cách đó, có vẻ hơi quá mức? –
@Peter: Sau đó sử dụng mô đun rpc nếu nó nằm trong cùng một cụm Erlang hoặc sử dụng lib_chan khi bạn muốn giao tiếp thông qua socket. –
Tôi khuyên bạn nên sử dụng cờ gắn cờ khi sử dụng vỏ từ xa, đặc biệt nếu bạn đang xử lý các mạng được phân phối. Ví dụ. erl -sname bar -remsh 'foo @ hynek-notebook' -hidden –