BashとKey-Valueペアまたはマップ

BashとKey-Valueペアまたはマップ

私たちは基本的にPython辞書の仕事をするbashスクリプトを書いています。以下は、私たちが使用しているコードと予想される出力です。

#!/bin/bash
declare -A serviceTag
serviceTag["source"]="ccr"
declare -A services
services+=( ["dataservice"]="latest" )

serviceTag+=( ["services"]=services )

echo "$serviceTag"

予想される出力は次のとおりです。

{"source":"ccr","services":{"datasetvice":"latest"}}

しかし、私たちが得るものは

ccrservices

私たちがここで犯す間違いを助けることができる人はいますか? bashとそのコードを使用してこれをどのように達成できますか?

ありがとう、カントゥ

ベストアンサー1

GNUプロジェクトのBashリファレンスマニュアルによると、Bash配列は1次元です。、索引付けされているか関連しているかどうか。つまり、入れ子にすることはできません。悪い知らせを伝えて申し訳ありませんが、あなたがやろうとしていることは不可能です。

おすすめ記事