Bash 2차원 배열

1 개요[ | ]

Bash 2차원 배열
declare -A MEMBERS=(
[0,ID]=102 [0,Name]="Yonezawa Akinori" [0,Address]="Naha, Okinawa"
[1,ID]=202 [1,Name]="Murata Makoto" [1,Address]="Sendai, Miyagi"
[2,ID]=104 [2,Name]="Sakamura Ken" [2,Address]="Kumamoto, Kumamoto"
)

echo ${MEMBERS[0,ID]}
echo ${MEMBERS[0,Name]}
echo ${MEMBERS[0,Address]}
echo ${MEMBERS[1,ID]}
echo ${MEMBERS[2,ID]}
declare -A MEMBERS
declare -A r0=([ID]=102 [Name]="Yonezawa Akinori" [Address]="Naha, Okinawa")
declare -A r1=([ID]=202 [Name]="Murata Makoto" [Address]="Sendai, Miyagi")
declare -A r2=([ID]=104 [Name]="Sakamura Ken" [Address]="Kumamoto, Kumamoto")

for i in {0..2}; do for c in ID Name Address; do
	ref="r$i[$c]"; MEMBERS[$i,$c]=${!ref}
done; done

echo ${MEMBERS[0,ID]}
echo ${MEMBERS[0,Name]}
echo ${MEMBERS[0,Address]}
echo ${MEMBERS[1,ID]}
echo ${MEMBERS[2,ID]}
declare -A MEMBER0=([ID]=102 [Name]="Yonezawa Akinori" [Address]="Naha, Okinawa")
declare -A MEMBER1=([ID]=202 [Name]="Murata Makoto" [Address]="Sendai, Miyagi")
declare -A MEMBER2=([ID]=104 [Name]="Sakamura Ken" [Address]="Kumamoto, Kumamoto")

for i in {0..2}; do for c in ID Name Address; do
	ref="MEMBER$i[$c]"; echo "$ref = ${!ref}";
done; done
echo ${MEMBER1[Name]} # Murata Makoto

2 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}