Bash 5.0.17がインストールされているCentOSで以下を実行してみました。
read x-y
-bash: read: `x-y': not a valid identifier
read x_y
成功:エラーがなく、変数が保存されます。
この問題の原因は何ですか、それを解決するには?
答え1
これバッシュマニュアル有効な変数名が次のとおりであることを示します。
文字、数字、下線のみで構成され、文字または下線で始まる単語です。
soはx-y
有効な変数名ではないため、パラメータとしては使用できませんread
。