シェルスクリプトを使用して他のプロジェクトの複数のリポジトリを複製する方法は?

シェルスクリプトを使用して他のプロジェクトの複数のリポジトリを複製する方法は?

複数のプロジェクトのURLがあり、各プロジェクトに複数のリポジトリがあり、ディレクトリ内のすべてのリポジトリを複製し、gitブランチを見つける必要があります。

私はこれを試しました

#!/bin/bash
project=(aa bb cc)
aa=(a b c)
bb=("d" "e")
cc=("g")
for i in "${project[@]}"
do
    echo "${!i}"
    for j in  @{$i}
    do
        echo $j
    done
done

しかし、出力はありません。

答え1

私が理解したのは、動的配列名を使用して配列を繰り返すことです。次のことができます。

#!/bin/bash
project=(aa bb cc)
aa=(a b c)
bb=("d" "e")
cc=("g")
for i in "${project[@]}"
do
    var="$i[@]"
    for j in  ${!var}
    do
        echo j=$j
    done
done

関連情報