zsh recursive glob and batch rename bash

zsh: list only regular files recursively, then mass-rename safely with zmv

setopt extendedglob; print -l **/*(.); autoload zmv; zmv '(*).txt' '$1.bak'