Estes não fazem parte do bash; find é um programa independente e não requer o bash ou até mesmo um shell POSIX para ser executado. Por exemplo, funciona bem com fish , que não é compatível com POSIX e não segue todas as mesmas regras de sintaxe do bash. Você poderia, de fato, usá-lo sem shell (por exemplo, em um contexto programático).
É por isso que (se você estiver usando um shell POSIX, ou um que tenha regras similares nessa instância), você deseja usar aspas com determinados argumentos para find , como find . -name '*foo' . A string entre aspas simples é passada sem executar nenhuma substituição ou expansão. O shell não faz nada com isso. Se você usar find . name *foo com o bash e houver arquivos correspondentes a esse glob no seu diretório atual, o que você pretendia que acontecesse provavelmente não aconteceria.
Se você usar um shell com regras diferentes, terá que levar isso em conta ao usar find . Por exemplo, você realmente não precisa citar o {} com bash , mas se você fizer a mesma coisa com fish , receberá find: missing argument to '-exec' .
As chaves encaracoladas têm um significado no bash - elas são usadas na substituição / expansão de parâmetros e em comandos de grupo. Eles têm uma espécie de propósito semelhante em find , mas é find que os analisa, não bash .