![bash + 같은 줄에 출력 값을 결합하는 방법](https://linux55.com/image/124402/bash%20%2B%20%EA%B0%99%EC%9D%80%20%EC%A4%84%EC%97%90%20%EC%B6%9C%EB%A0%A5%20%EA%B0%92%EC%9D%84%20%EA%B2%B0%ED%95%A9%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
두 개의 배열 변수가 있습니다.
linux_machines
디스크
printf "%s\n" ${linux_machines[*]}
neptun1
neptun2
neptun3
printf "%d\n" ${disks_num[*]}
4
5
5
두 개의 배열 값을 결합하여 다음과 같은 예상 결과를 얻는 방법
neptun1 ..... 4
neptun2 ..... 5
neptun3 ..... 5
답변1
배시 사용:
for i in ${!linux_machines[@]}; do echo "${linux_machines[$i]} ..... ${disks_num[$i]}"; done
산출:
해왕성 1 ..... 4 해왕성 2 ..... 5 해왕성 3 ..... 5
두 배열 모두 필드 번호에 간격이 없다고 가정합니다.
답변2
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
답변3
동일한 결과를 얻으려면 아래 방법을 사용하십시오.
for i in 0 1 2; do echo ${linux_machines[$i]]}" ...... "${disks[$i]}; done
산출
neptun1......4
neptun2......5
neptun3......5