使用fifos和链接来控制网页的远程过程(Linux)

我在linux服务器上使用mpg123,我试图通过网页(apache)控制它,使用链接发送不同的控件。

mpg123有-C标志,所以你可以发送字符到它。 “s”键=开始/停止,“f”键=下一首曲目…等等。

我想我可以用fifo发送mpg123这些密钥,将mpg123 stdin改为fifo stdout,但是我不知道如何在这种情况下使用fifo(如何让mpg123“听”另一个stdin)。 我所做的是:

mkfifo myfifo myfifo | mpg123 -C -@ musiclist.txt And then I've created keys.txt adding some keys to the file: echo "f" >> keys.txt echo "s" >> keys.txt 

然后:

 cat keys.txt >> myfifo.fifo 

这不起作用。 有人可以解释我可以使用fifos将消息传递给正在运行的mpg123吗? 我GOOGLE了,但无法find我想要的。

这个问题似乎给了我一些亮点,但是我仍然不知道如何让mpg123听取fifo的输出。

先谢谢你,

你用什么来管myfifo?

我会假设cat myfifo | mpg123 -C -@ musiclist.txt cat myfifo | mpg123 -C -@ musiclist.txt

第一个文件通过myfifo管道后,猫会关闭。 尝试使用tail -f myfifo | ... tail -f myfifo | ...而是在EOF之后保持打开。

 mkfifo myfifo tail -f myfifo | mpg123 .. & # send commands echo .. > myfifo sleep 5 echo .. > myfifo 

tail是可选的,除非mpg123在stdin接收到EOF时退出。 否则,你可以使用: <myfifo mpg123 ..

如果您在另一个终端中运行echo命令,最后(控制操作员在后台执行该命令)是可选的。

mpg123有它自己的–fifo选项