我正在使用rebar来构建erlang应用程序,当我使用start选项启动应用程序时它在后台运行正常并且它返回命令提示符。我不想看到所有后台输出,所以我没有使用控制台选项运行。但是如果我需要任何时间在后台进行操作,由于任何错误检查控制台,我如何获得正在运行的应用程序的控制台?
答案 0 :(得分:2)
我猜你已经使用Rebar发布了一个版本,并且已经使用生成的启动脚本启动了该节点。
所以最好的方法是使用启动选项'attach':
./bin/mynode attach
它将通过管道连接到shell,因此您将位于正在运行的实际节点中,因此请小心使用Ctrl-c。 (将选项“+ Bi”添加到您的vm.args文件以限制它..)
答案 1 :(得分:0)
Ctrl-G进入JCL模式,然后'j'进入列表,然后'c'后跟一个数字连接到所选作业。请参阅eshell docs,特别是JCL部分。
哦,或者如果通过'命令提示符'表示操作系统shell而不是Erlang shell,IIRC你需要启动一个适当的-name'd或-sname'd的Erlang节点(无论你想要哪个节点)连接到使用),然后连接到该节点(在JCL模式下为'r'),然后连接到作业。
答案 2 :(得分:0)
您可以将远程shell连接到节点,前提是它已设置为分发。使用以下命令:
erl -sname rem -remsh node@host -setcookie the_cookie -hidden