0

私はスクリプトを持っています:

#!/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がわかりました。

これを異なる評価にするために、これらのバージョン間で何が変更されましたか? これは解決されたバグですか?

4

1 に答える 1