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