Que tal isso?
find /home/ -name filename.gif -exec mv -f /home/shared/filename_default.gif {} \;
O sinalizador -exec encontrou um comando em todos os objetos encontrados. O {}
indica o nome do arquivo encontrado. Você terá que finalizar o comando shell com \;
. Você poderia indiscutivelmente usar ln -s
para simbolizar esses .gifs. Isso pode ser mais fácil se você quiser alterar seu .gif compartilhado sem refazer esse tipo de descoberta e movimentação.
EDIT Bons pontos por Denilson abaixo. Apesar da questão envolvendo mv
, ele só funcionará uma vez, antes que o arquivo de origem seja removido. (movido) Seu conselho sobre o comando echo é uma boa maneira de checar novamente o que vai acontecer, antes que aconteça.
find /home/ -name filename.gif -exec cp -p /home/shared/filename_default.gif {} \;
- Christopher Karel