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" {} +