你如何处理令人分心的shell tty输出?

时间:2011-04-07 16:26:23

标签: shell erlang sasl

我的应用程序执行循环error_logger报告。

这些将显示在Erlang shell上,这是一个非常多的输出。

这使得在shell中输入非常麻烦。

通常的处理方法是:

  1. 我真的很想看到这个输出

  2. 我不喜欢输入行的所有内容我只需输入

  3. 如何处理?始终在第二个shell上进行分发并连接以供用户输入(这在启动应用程序时是额外的工作,我在开发期间经常这样做。)

    我更喜欢一些自动轻松启动的设置,其中所有日志记录和sasl消息都在一个地方,我的输入和返回值在另一个地方不受干扰。

    作为参考,这是我开始会话的方式:

    #!/bin sh
    erl +W w -boot start_sasl -config myapp -s myapp -extra "$@" 
    

1 个答案:

答案 0 :(得分:4)

在内核文档(http://erlang.org/doc/man/kernel_app.html)中,它描述了如何设置应用程序环境变量以将error_logger打印输出重定向到文件或完全禁用它们。这样的事情对你有用:

erl +W w -boot start_sasl -kernel error_logger '{file,"/tmp/log"}' -config myapp -s myapp -extra "$@" 

您还可以使用类似的选项进行sasl打印输出:http://erlang.org/doc/man/sasl_app.html