A sintaxe extglob para bash
não está habilitada por padrão, e é isso que lhe dará a sintaxe !(...)
. Você terá que ativá-lo, se quiser, mudando primeiro o seu shebang para usar o bash
#! /bin/bash
depois, ativando extglob adicionando
shopt -s extglob
em algum lugar antes dessa linha