Existem duas implementações rename principais no Linux:
- O que vem com
perl (que provavelmente é o que você esperava)
- O que vem com o util-linux (provavelmente o que você tem).
A sintaxe para o que vem com util-linux seria:
find ... -execdir rename '[' '(' {} +
No entanto, isso apenas substituirá uma ocorrência de [ .
perl ' rename pode ser chamado de prename no seu sistema.
Uma alternativa para rename é zmv de zsh. Ele cuidaria da profundidade dos diretórios descendentes primeiro e evitaria problemas com colisões.
No zsh:
autoload zmv
zmv '(**/)(* *)' '$1${2//\[/(}'
E para converter {} e [] para () :
zmv -n '(**/)(* *)' '$1${${2//[]\}]/)}//[[{]/(}'