2つの配列変数があります。
linux_machines
ディスク
printf "%s\n" ${linux_machines[*]}
neptun1
neptun2
neptun3
printf "%d\n" ${disks_num[*]}
4
5
5
両方の配列値を組み合わせて、次の期待される結果が得られるようにする方法
neptun1 ..... 4
neptun2 ..... 5
neptun3 ..... 5
paste
+ printf
解決策:
linux_machines=("neptun1" "neptun2" "neptun3")
disks=(4 5 5)
paste -d' ' <(printf "%s .....\n" "${linux_machines[@]}") <(printf "%d\n" "${disks[@]}")
出力:
neptun1 ..... 4
neptun2 ..... 5
neptun3 ..... 5
Bashを使用する場合:
for i in ${!linux_machines[@]}; do echo "${linux_machines[$i]} ..... ${disks_num[$i]}"; done
出力:
neptun1 ..... 4 neptun2 ..... 5 neptun3 ..... 5
どちらの配列にもフィールド番号にギャップがないと思います。
同じことを達成するために以下の方法を使用します。
for i in 0 1 2; do echo ${linux_machines[$i]]}" ...... "${disks[$i]}; done
出力
neptun1......4
neptun2......5
neptun3......5