(1) Os diretórios:
find . -mindepth 1 -type d -not -name '*.backup' \
-not -path '*.backup/*' -print0 | xargs -0 chmod MODE
(2) Os arquivos:
find . -type f -not -name '*.bak' \
-not -path '*.backup/*' -print0 | xargs -0 chmod MODE
Para testar, você pode executar as linhas de comando com ls -ld
em vez de chmod ...
.