Estou assumindo que você deseja executar uma operação sed
no conteúdo de cada um dos arquivos, e não na lista de nomes de arquivos, já que você já sabe como fazer isso. A resposta depende em parte da versão de sed
que você tem disponível. Se ele suportar a opção -i
(editar arquivos no lugar), você pode usar xargs
assim:
find . | xargs grep 'userTools' -sl | xargs -L1 sed -i 's/this/that/g'
Se o seu sed
não tiver a opção -i
, você poderá fazer isso:
find . | xargs grep 'userTools' -sl | while read file
do
sed 's/this/that/g' "$file" > tmpfile
mv tmpfile "$file"
done