Erlang:RPC到该节点上具有输出的节点

时间:2009-05-16 11:05:30

标签: erlang

有没有办法对节点进行rpc调用,但是输出显示在该节点上,而不仅仅是在调用节点上(事实上,如果调用节点没有显示输出,我不会太烦恼)

虽然我明白我可以使用

rpc:call( Node, erlang, display, [ someTerm ] ).

并且它将在Node上显示“someTerm”,我真正想要的是获取在远程节点终端上显示的已执行方法的结果,以便在节点上尝试运行ls:

rpc:call( Node, c, ls, [] ).

它实际上会将文件夹内容的结果写入Node的终端。

我的想法是,我可以从单个节点驱动演示文稿,但是我正在驱动的节点显示其上的操作历史。

1 个答案:

答案 0 :(得分:9)

尝试; - )

rpc:call( Node, c, ls, [] ).

或当您想要在Node

上显示时
spawn(Node, fun()->group_leader(whereis(user),self()), c:ls() end).

或更有趣的示例,它将本地进程的输出重定向到Node

的另一个终端
group_leader(rpc:call(Node, erlang, whereis, [user]), self()),
c:ls(),
group_leader(whereis(user), self()).