如何从RabbitMQ执行本地bash脚本?

时间:2017-07-22 09:40:17

标签: linux bash shell centos rabbitmq

问候所有。
如何实现下一步:

  1. Publisher(Web客户端)向队列添加消息。
  2. RabbitMQ必须使用队列消息
  3. 中的参数执行bash脚本
  4. 如果bash脚本成功执行,则向RabbitMQ发送确认
  5. 收到确认后,RabbitMQ将使用队列消息中的参数执行bash脚本。
  6. 在获得确认之前,RabbitMQ将推迟执行bash脚本
  7. 是否有可能与RabbitMQ达成协议?
    你能给我一些建议吗?

    非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您需要使用system C stdlib调用来执行此操作。还有一些其他相关的SO问题可以帮助您解决这个问题。在this one on executing shell built-insthis one on system上尝试帮助。您还可以man systemman execv

解析队列消息,使用需要根据队列消息执行的命令制作char *string对象,然后将其传递给system。如果您没有根据手册页获取返回代码,请参阅this SO question以获取有关system返回代码的帮助。