2016-08-02 2 views
0

for 루프에서 매개 변수로 partition 및 replicationfactor를 읽고 싶습니다. 어떻게 할 수 있습니까? 2와 3 대신 rf와 파티션을 읽어서 원시 값과 좋음 값을 나눌 수 있습니다. 당신이 숫자 루프를 필요 같은쉘에서 for 루프의 다중 매개 변수 읽기

topics=(raw good bad) 
rf=(4 6 8) 
partition=(2 3 4) 
for topic in ${topics[*]} 
do 
    bin/kafka-topics.sh --create --replication-factor 2 --partitions 3 --topic "$topic" --zookeeper $zk_hosts 
done 
+0

예를 들어'--replication-factor 4 --partitions 2 --topic raw'와'--replication-factor 6 --partitions 3 --topic good'을 명확히해야합니다. – chepner

답변

2

는 소리 :

for ((i = 0; i < ${#topics[@]}; ++i)); do 
    # whatever you want with the corresponding elements of each array, e.g. 
    echo "${topics[i]} ${rf[i]} ${partition[i]}" 
done 

루프 카운터가 배열 topics의 길이에 0에서 간다, 그래서 이것은 다른 배열의 각각의 동일한 수 있다고 가정 집단.