「cat」がJSON配列を繰り返すように見えるのはなぜですか?

「cat」がJSON配列を繰り返すように見えるのはなぜですか?

catBash 3.2でJSONを含む区切り文書を出力しようとすると、この動作により混乱しました。

入力する:

$ cat <(cat <<EOF
> {"x":[{"a":1,"b":2}]}
> EOF)

出力:

{"x":["a":1]}
{"x":["b":2]}

どうなりますか?

ベストアンサー1

これは単にbashのシェル変数拡張です。この場合、中かっこの間のすべての項目が繰り返され、式に展開されます。

$ echo var{1,2,3,4}
var1 var2 var3 var4

$ echo var{1..10}
var1 var2 var3 var4 var5 var6 var7 var8 var9 var10

おすすめ記事