O que o {} no comando find / path / -exec '{}' faz?

12

Estou curioso para saber o significado do {} no comando a seguir?

Comando de exemplo:

find /foo/ -name "*.txt" -exec rm -v {} \;

A página de manual forneceu uma pequena sinopse, mas me confundiu um pouco:

A string '{}' é substituída pelo nome do arquivo atual sendo processado em todos os lugares em que ocorre nos argumentos do comando, não apenas nos argumentos em que está sozinho, como em algumas versões do find.

chrisjlee
fonte

Respostas:

12

Esse é o símbolo que é substituído pelo nome do arquivo que findaparece.

Bruce Ediger
fonte
Ah, isso faz sentido e eu poderia adicionar outro argumento depois disso?
Chrisjlee
6
Você pode adicionar o que quiser: é apenas um argumento. muito bonito como "$a-single-output-file-name"quando -exectermina com \; ... mas isso significa que "$multiple" "$output" "$filenames"quando -execas extremidades com\+
Peter.O
Bom comentário por Peter.O :). Ver resposta também relacionada com a pergunta sobre encontrar -exec
Tatjana Heuser