bash は 3 つの単語の文字列を 1 つの単語の文字列として扱う状態になりますが、なぜでしょうか?

bash は 3 つの単語の文字列を 1 つの単語の文字列として扱う状態になりますが、なぜでしょうか?

bash バージョン 5.2.15(1) リリース (i686-pc-linux-gnu)。

多くの bash は、KDE ​​の Konsole の下のウィンドウのターミナルで実行されています。

数日前から、これらのシェルの 1 つである bash が奇妙な状態になりました。3 つの単語の文字列が 1 つの単語の文字列として扱われるのです。

テストコードは次のとおりです。

WEy="a b c"; read -a WEarr <<< "$WEy"; WE_noe=${#WEarr[@]}; echo "WE_noe: ~$WE_noe~"; for ((i=0; $i<$WE_noe; i++)); do echo "$i:: ${WEarr[$i]}"; done

間違った出力は次のとおりです。

WE_noe: ~1~
0:: a b c

abc 間のスペースは保持されます。

正しい出力は次のようになります。

WE_noe: ~3~
0:: a
0:: b
0:: c

原因はタイプミスかもしれないが、分からない。

助けてください:

原因は何なのか、

これはbashの特別な状態です。

bash を通常の状態にリセットするにはどうすればいいですか?

コマンド「tset」および「reset」は役に立ちません。

よろしく

== アドオン 08.02.2023::12:00

の出力

stty -g

この悪いバッシュと良いバッシュは違います。

最初のコロンの前の最初の値が異なります。

良いバッシュは

5100: ...

悪いバッシュは

6506: ...

取り組まなければなりません。

よろしく

関連情報