複数のコマンドに {} を使用すると bash スクリプト エラーが発生する

複数のコマンドに {} を使用すると bash スクリプト エラーが発生する

私はbashスクリプト(以下)を書いて、それを実行します。

sudo bash ./script.bash 

結果エラー:

line 22: syntax error near unexpected token `fi'

スクリプト:

getent passwd myuser > /dev/null
if [ $? -eq 0 ]; then
    echo "info: user myuser already exists"
else
    sudo useradd -M myuser > /dev/null || { echo "ERROR: could not create user myuser."; exit 1 }
    echo "info: user myuser created successfully"
fi

次の行を削除した場合:

|| { echo "ERROR: could not create user fiminion"; exit 1 }

すべてうまくいっているようです。何が足りないのかわかりません。:/

関連情報