otp_src_R11B-5\lib\erl_interface\src\prog\erl_call.c 是个不错的工具, 就是ei的前端能够通过cnode给erlang的后端发各种请求。
where: -a apply(Mod,Fun,Args) (e.g -a 'erlang length [[a,b,c]]'
-c cookie string; by default read from ~/.erlang.cookie
-d direct Erlang output to ~/.erl_call.out.<nodename>
-e evaluate contents of standard input (e.g echo "X=1,Y=2,{X,Y}."|erl_call -e ...)
-h specify a name for the erl_call client node
-m read and compile Erlang module from stdin
-n name of Erlang node, same as -name
-name name of Erlang node, expanded to a fully qualified
-sname name of Erlang node, short form will be used
-q halt the Erlang node (overrides the -s switch)
-r use a random name for the erl_call client node
-s start a new Erlang node if necessary
-v verbose mode, i.e print some information on stderr
-x use specified erl start script, default is erl
使用方法 :
1. erl -name xx@192.168.0.98 启动后端
2. export EI_TRACELEVEL=6
i. erl_call -v -d -n xx@erl98.3322.org -m 模块方式 ( -v -d 调试和verbose模式)
如:
-module(a).
CTRL+D
II. erl_call -v -d -n xx@erl98.3322.org -e 表达式方式
1+2.
CTRL+D
III. erl_call -v -d -n xx@erl98.3322.org -a 'erlang length [[a,b,c]]'
这2中都是从stdin读 直到你按下CTRL+D, 然后你就可以看到结果。
这只程序内存有泄漏
* Note: We don't free any memory at all since we only
* live for a short while.
而且 erl_call.c有bug 812行 free(mbuf); /* Allocated in read_stdin() */
注释掉这行就可以了
这个程序默认是不安装带标准发布目录去的。
从这个程序 我们可以知道cnode 能作的事情受限于你的想像力。
注:
ping erl98.3322.org
PING erl98.3322.org (192.168.0.98) 56(84) bytes of data.
由于erl_call程序有点小问题 -n xx@erl98.3322.org 最好用域名 否者erl_call就抓狂了。</nodename>
分享到:
相关推荐
erl_nif 扩展erlang的另外一种方法
erl_to_html 使用解析变换和erl_id_trans.erl Erlang的代码转换为HTML,跨度的一切。...我不知道我需要怎么做许可证,但是由于我是从Erlang示例代码中复制erl_id_trans.erl,因此我正在使用Erlang公共许可证。
erlang-erl_interface-19.3.6.4-1.el7.x86_64.rpm
这个erlang版本的protobuf,做了改进,效率有很大提升,配套文章地址http://blog.csdn.net/mycwq/article/details/42122439
Erl_B表查询小工具
erlang-erl_docgen-19.3.6.4-1.el7.x86_64.rpm
{erl_embedded_redis, ".*", {git, "https://github.com/gossiperl/erl_embedded_redis.git", {tag, "3.0.3"}}} ]}. rebar get-deps compile 直接从终端 git clone git://github....
erl_gm:Erlang GraphicsMagick包装器
驻波比换算工具,Erl_B表,功率换算工具
erl_aliases是一个 Erlang 解析转换库,它提供了一个简单直接的接口,用于为(较长)记录和模块名称定义(较短)别名。 定义后,可以使用别名代替原始名称。 基本原理 全局 Erlang 记录和模块名称往往相对较长。 长...
原贴 https://blog.csdn.net/ap114/article/details/118092301 用rust 开发 erlang nif的正确做法
erl_migrate 升级/降级架构和迁移erlang应用程序数据库数据的工具 安装 运行make deps以安装depident 运行make来编译代码 用法 参数Options数据结构是map 创建迁移src文件 Args = #{ schema_name => mhs, ...
erl_unused_includes.sh 版权所有 (C) 2014 Klarna AB。 这是一个 shell 脚本,可以用作 Erlang erlc 编译器的包装器,它通过多次编译文件并只保留编译工作实际需要的那些包含声明来消除源文件中不必要的包含声明。 ...
错误默认该项目旨在包括大量用于调试,开发和测试erlang项目的帮助程序。user_default user_default是一个文件,可以在其中调用所有导出的函数而无需从外壳程序获取模块前缀的情况。 有关user_default的文档,请在...
erl_protobuffs Google的Erlang协议缓冲区的实现,基于 。 该模块是其他开源模块和原始代码的组合,使与 Protocol Buffers 协议的接口变得容易。使用 .proto 文件该模块的主要目标是让开发人员能够轻松使用 .proto ...
The Kernel application is the first application ...• erl_boot_server • erl_ddll • error_logger • file • global • global_group • heart • inet • net_kernel • os • pg2 • rpc • seq_trace • user
Erlang 模糊字符串匹配器 Erlang 的模糊字符串匹配器汇集了一些算法,使模糊字符串匹配可用作 Erlang 程序的库。 这段代码的灵感来自于的 Python 代码 概述 模糊匹配器作为节点本地运行,名为gen_server ,它保存...
端口测试 这对我来说只是一个例子,还有谁需要它... call (p, :sys , :"version_info.__str__" , []) " sys.version_info(major=2, minor=7, micro=9, releaselevel='final', serial=0) " iex ( 13 ) > result = :pyth
application:start(erl_cron).erl_cron_server:add_job({"*/2 * * * *", fun () -> io:format("job completed!~n", []) end}). 2添加计划作业(MFA)。 application:start(erl_cron).erl_cron_server:add_job({"*/2...