有没有办法对节点进行rpc调用,但是输出显示在该节点上,而不仅仅是在调用节点上(事实上,如果调用节点没有显示输出,我不会太烦恼)
虽然我明白我可以使用
rpc:call( Node, erlang, display, [ someTerm ] ).
并且它将在Node上显示“someTerm”,我真正想要的是获取在远程节点终端上显示的已执行方法的结果,以便在节点上尝试运行ls:
rpc:call( Node, c, ls, [] ).
它实际上会将文件夹内容的结果写入Node的终端。
我的想法是,我可以从单个节点驱动演示文稿,但是我正在驱动的节点显示其上的操作历史。
答案 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()).