希望通过bash脚本发送一些消息。
bin/zookeeper-server-start.sh config/zookeeper.properties > zookeeper.log 2>&1 &
sleep 2
bin/kafka-server-start.sh config/server.properties > server.log 2>&1 &
sleep 2
# Create topic
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic $1
sleep 2
# Get topics list
echo "kafka has next topics:"
bin/kafka-topics.sh --list --zookeeper localhost:2181
# send message
echo "will send messages:"
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic $1 "test 1"
Kafka开局不错。我可以通过制作人控制台发送消息
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic $1 "test 1"
但我无法将消息发送到bash脚本中。如何通过bash脚本发送?
谢谢。
4条答案
按热度按时间sh7euo9m1#
这可能对某些人有帮助。我试着运行@sereija的答案,其中生成的消息是一个json,格式如下:
解析没有正确执行。你需要用反斜杠
\
当要在队列中发布的消息有字符串时,执行@sereija的应答。准确地说,我的代码工作如下:tyg4sfes2#
尝试这样做:
或者这个:
plupiseo3#
这也适用于:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic "my-topic" < file.txt
aiazj4mn4#
您也可以执行以下操作。忽略sleep参数。