0

bin/kafka-topics.sh --create --topic topic name --bootstrap-server localhost:9092 in here, I wanted to check if the topic name is in the format -[a-z]_[0-9]. Example: topic name - demo_123

1 Answers1

1

kafka-topics.sh is just a wrapper to the class kafka.admin.TopicCommand. I don't think you can pass any parameter to kafka-topics.sh to achieve what you want, but you can create your own kafka-topics.sh that parses the arguments and checks the topic argument format. Something along these lines:

Note that if it supports short args or --topic=topic_name you'll need to account for these in the script.

#!/bin/bash

while :; do
  case $1 in
    --topic)
      if [[ ! $2 =~ ^[a-z]+_[0-9]+$ ]]; then
        echo "Invalid format for topic $2"
        exit 1
      fi
      break
      ;;
    *)
      break
  esac
done

exec $(dirname $0)/kafka-run-class.sh kafka.admin.TopicCommand "$@"
Gerard Garcia
  • 1,554
  • 4
  • 7