シェル内の文字列を置換します。エラー: 置換が正しくありません

シェル内の文字列を置換します。エラー: 置換が正しくありません

すべての空白を _ に置き換えようとしています。次のコードを使用しました。

FONT="DejaVu Sans Mono"
FONT_CODE=${FONT//[ ]/_}
echo $FONT_CODE 

出力として DejaVu_Sans_Mono を期待していましたが、次のエラーが発生しました:

x.sh: 2: Bad substitution

仕事を得るために何をする必要があるか分かりません。

答え1

コメントからヒントを得て、私が問題を解決した方法は次のとおりです。sh の代わりに zsh を使用しましたが、うまくいきました。

まず、zsh をインストールする必要がありました。

sudo apt install zsh

次に、ターミナルで sh の代わりに zsh を使用しました。

zsh x.sh

エラーは発生せず、出力は次のようになります。

デジャヴサンズモノ

関連情報