【bashシェル】連想配列のキーと値を元にループする


この記事はプロモーションを含みます。

bashシェル

bashシェルスクリプトにおける連想配列で、キーまたは値を元にループ処理を行う方法を解説します。

はじめに

本記事では、連想配列のキーまたは値を元にループ処理を行う方法を説明します。
連想配列の基本的な使い方については、以下をご覧ください。

キーを元にループする

ここでは、キーを元にループしつつ、キーの内容を表示する方法を説明します。

#!/bin/bash

# 連想配列の初期化
declare -A animals=(
	["ねこ"]="cat"
	["ライオン"]="lion"
	["ペンギン"]="penguin"
)

# ループしつつ、キーを取得する
for animal in "${!animals[@]}";
do
	echo "${animal}"
done

サンプルの実行結果です。
連想配列の全てのキーが取得出来ました。

ペンギン
ライオン
ねこ

上記の実行結果の通り、連想配列ではキーの順序性は保持されないので注意が必要です。

値を元にループする

ここでは、値を元にループしつつ、値の内容を表示する方法を説明します。

#!/bin/bash

# 連想配列の初期化
declare -A animals=(
	["ねこ"]="cat"
	["ライオン"]="lion"
	["ペンギン"]="penguin"
)

# ループしつつ、値を取得する
for animal in "${animals[@]}";
do
	echo "${animal}"
done

サンプルの実行結果です。
連想配列の全ての値が取得出来ました。

penguin
lion
cat

上記の実行結果の通り、連想配列では値の順序性は保持されないので注意が必要です。

コメント

タイトルとURLをコピーしました