在哪里发送守护进程可选输出,以便它可读

时间:2015-04-09 15:07:23

标签: bash sockets port vowpalwabbit

我的守护进程有选项

-r WhereShouldIOutputAdditionalData 

守护程序正在侦听端口26542并在同一端口上写入,我还希望将其他数据输出到26542,我尝试使用

-r /dev/tcp/127.0.0.1/26542

它不起作用,当我这样做时

> /dev/tcp/127.0.0.1/26542

我拒绝连接。我使用的Deamon:vowpal_wabbit,机器学习库。任何想法?

2 个答案:

答案 0 :(得分:0)

对不起,你想做什么是不可能的,原因有两个:

首先,bash无法侦听给定的TCP端口。 例如,您无法在普通bash中编写TCP服务器守护程序(您可以使用netcat),只能将()连接到bash中的TCP端口。

另外,听另一个进程已经处于LISTEN状态的TCP ip:端口是不可能的。

答案 1 :(得分:0)

根据

的非官方手册页

https://github.com/JohnLangford/vowpal_wabbit/wiki/Command-line-arguments

我看到了

-r [ --raw_predictions ] arg     File to output unnormalized predictions to

所以我认为-r参数期待一种/path/to/logs/raw_preds.log参数。

有了这个,你就可以捕获可选输出,因此它是可读的。"您可以打开一个单独的窗口,并使用dev / admins老朋友tail -f /path/to/logs/raw_preds.log查看写入文件的信息。

如果你真的想让它全部出现在一个端口上(从你的问题中看不清楚),你需要一个可以多路复用输出的独立程序,并且可以控制您需要的端口号。此外,您还需要关注正确的输出顺序。

IHTH。