У меня есть этот файл test.in
$cat test.in
Topic: Topic1 Partition: 0 Leader: 1 Replicas: 1 Isr: 1 Offline:
Topic: Topic1 Partition: 1 Leader: 1 Replicas: 1 Isr: 1 Offline:
Topic: Topic1 Partition: 2 Leader: 2 Replicas: 2 Isr: 2 Offline:
Topic: Topic1 Partition: 3 Leader: 3 Replicas: 3 Isr: 3 Offline:
Topic: Topic1 Partition: 4 Leader: 3 Replicas: 3 Isr: 3 Offline:
Topic: Topic1 Partition: 5 Leader: 2 Replicas: 2 Isr: 2 Offline:
Я хочу разделить этот файл столько раз, сколько лидеров. Среди параметров файла есть определение Topi c, Partition, Leader и т.д. c. В нашем примере есть 3 лидера (их может быть больше)
Со значениями Topi c и Partition я хочу создать новый контент.
Для этого я использую:
while read line
> do
> awk '{print "bean kafka.log:type=Log,name=LogStartOffset,topic="$2",partition="$4}'
> done <test
И я получаю:
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=1
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=2
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=3
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=4
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=5
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=6
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=7
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=8
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=9
Но я хочу разделить выходной файл на другой в зависимости от определения лидера в test.in.
Я хочу, чтобы результат был примерно таким:
$cat Broker1
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=0
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=1
$cat Broker2
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=2
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=5
$cat Broker3
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=3
bean kafka.log:type=Log,name=LogStartOffset,topic=Topic1,partition=4
Я пытаюсь сделать это, изменяя while-l oop таким образом:
while read line
> do
> BROKER=$(awk '{print $6}')
> awk '{print "bean kafka.log:type=Log,name=LogStartOffset,topic="$2",partition="$4}' >>broker."$BROKER"
> done <test.in
Но я получил эту ошибку:
-bash: broker.$BROKER: ambiguous redirect
И Не понимаю, что не так.
Спасибо