command-line - 如何使用 mosquitto 命令行工具同时订阅和发布?
问题描述
我想用 MQTT (3.1.1) 实现请求-响应。我猜它可以使用一些语言绑定来完成。但是如何使用 mosquitto_pub 和 mosquitto_sub 命令行实用程序来做到这一点?
主要问题是,我需要先订阅,然后发布,然后等待传入的数据包。我使用zsh(或bash)尝试了这个,没有运气,你可以看到有时消息到达,有时它没有。
$ mosquitto_sub -t topic -C 1 & mosquitto_pub -t topic -m message ; fg
[1] 20321
[1] + running mosquitto_sub -t topic -C 1
^C
$ mosquitto_sub -t topic -C 1 & mosquitto_pub -t topic -m message ; fg
[1] 20341
[1] + running mosquitto_sub -t topic -C 1
message
它也确实连接了两次,这并不理想。
解决方案
简短的回答是,你没有。
如果您想做这种事情,请使用带有 python 之类的适当客户端库。
推荐阅读
- sql - 如何在没有'with'的情况下将多个子查询合并为一个?
- django - 在 ModelForm 中显示计算的字段值
- reactjs - 如何使用三元运算符的道具
- javascript - 我如何使用 react-google-maps 组件绘制路线?
- c# - 使用没有 Group By 的连接表从 SELECT 语句返回单行
- xaml - 在 xceed 网格列组值模板中获取数据行上下文或值父级?
- regex - 如何刮掉一个字面上包含“\x2d”的页面,但在我的项目中将该字符保存为“-”?
- mysql - 能够使用关联进行迁移,但无法使用关联进行查询(未找到关联)
- xamarin.forms - DataServiceContext.ExecuteAsync 导致有关 User-Agent 标头的异常
- java - 如何在乘法表中制作间距