私はスクリプトを持っています:
#!/bin/bash
{ read a
read b
} <<< $(echo a; echo b)
declare -p a b
私はそれを に書きましたf
、した、そしてと が同一になることをchmod +x ./f
期待していました。bash ./f
./f
それらはそうではありません:
~/dev/test[1]$ ./f
declare -- a="a b"
declare -- b=""
~/dev/test[2]$ bash ./f
declare -- a="a"
declare -- b="b"
bash ./f
バージョン 5.0.16 を使用/usr/local/bin/bash
しており、バージョン 3.2.57 を./f
使用していること/bin/bash
がわかりました。
これを異なる評価にするために、これらのバージョン間で何が変更されましたか? これは解決されたバグですか?