Primeiro, !(dir_name_not_to_delete)
é um glob estendido. Para que funcione, você precisa ativar a opção de globs estendidos. Executar:
shopt -s extglob
Em segundo lugar, a mensagem de erro específica que você vê, -bash: !: event not found
, significa que você também tem a expansão do histórico ativada. Se você não deseja a expansão do histórico, é mais seguro desativá-lo:
set +H