Você pode usar a opção -name para encontrar para restringir as correspondências com base no nome do arquivo.
find myDirectory/. -type f -name '*.txt' -print0 | xargs -0 sed -i "$replace"
Para várias extensões, você pode usar -o (ou) e agrupá-las com () .
find myDirectory/. -type f \( -name '*.txt' -o -name '*.read' \) -print0 | xargs -0 sed -i "$replace"
Outra melhoria que pode ser feita é usar -exec em vez de xargs . Isso é mais portátil e elimina um subnível.
find myDirectory/. -type f -name '*.txt' -exec sed -i "$replace" {} +