浏览 3991 次
锁定老帖子 主题:另一种实用的接入erlang控制台的方法
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-04-06
最后修改:2009-04-07
如果你的节点有name 那么可以用JCL 或者-remsh 接入. 否则的话 你就得用如下方法: 请先参考 Embedded Systems User's Guide. 这种方式的好处是你的所有输入输出都记录在log文件里面 方便你日后查阅。 先运行 [root@localhost R13A]# which erl /usr/local/bin/erl 确认下你的erl系统安装在那个路径。 [root@localhost bin]# /usr/local/lib/erlang/bin/start 但是我用的R12B5或者R13A发行版这样有点小问题 start没有运行起来, 我调查了半天发现有2个问题: 1. run_erl的log是设定在/usr/local/lib/erlang/log但是没有这个目录, 通过运行mkdir /usr/local/lib/erlang/log搞定 2. /usr/local/lib/erlang/releases/R13A/sys.config文件没有. 其中 R13A可能是R12B5. 通过运行echo "[]." > /usr/local/lib/erlang/releases/R13A/sys.config搞定 做了以上的步骤,现在运行 [root@localhost ~]# ps -ef|grep beam root 19947 19946 0 03:35 pts/3 00:00:00 /usr/local/lib/erlang/erts-5.7/bin/beam.smp -- -root /usr/local/lib/erlang -progname start_erl -- -home /root -boot /usr/local/lib/erlang/releases/R13A/start -config /usr/local/lib/erlang/releases/R13A/sys 确认beam已经运行, 同时/tmp/目录下有erlang.pipe.1.r erlang.pipe.1.w 的pipe. 如果还没有运行起来 那么就看下 tail /var/log/syslog 查明出错原因 收获的时候到了 [root@localhost bin]# to_erl Attaching to /tmp/erlang.pipe.3 (^D to exit) 1> 1> 1> 看到熟悉的shell提示符号了。退出的时候记得用^D, 而不是^C. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-04-06
erl_call 也可以对 有名字的节点进行rpc调用 进行简单的维护操作。
|
|
返回顶楼 | |
发表时间:2009-04-06
/*
* Module: run_erl.c * * This module implements a reader/writer process that opens two specified * FIFOs, one for reading and one for writing; reads from the read FIFO * and writes to stdout and the write FIFO. * ________ _________ | |--<-- pipe.r (fifo1) --<--| | | to_erl | | run_erl | (parent) |________|-->-- pipe.w (fifo2) -->--|_________| ^ master pty | | slave pty ____V____ | | | "erl" | (child) |_________| */ |
|
返回顶楼 | |
发表时间:2009-04-07
macosx版本也是同样的问题
|
|
返回顶楼 | |
发表时间:2009-11-06
这种方式是后台运行且不是节点的erl程序 接入控制台的唯一方式。
|
|
返回顶楼 | |
发表时间:2009-11-25
run_erl和to_erl是通用的pipe封装器 我们也可以这样用:
|
|
返回顶楼 | |
发表时间:2009-11-25
run_erl和to_erl是通用的pipe封装器 我们也可以这样用:
/usr/local/lib/erlang/bin/run_erl -daemon /tmp/ /tmp/log "exec lua" to_erl 这时候我们看到的是 lua的shell |
|
返回顶楼 | |