Respostas:
sedé a ferramenta certa; mas, como alternativa, você pode até usar excomandos em vim:
vim -c 'args <files> | argdo %s/cat/dog/g | x'
Onde <files>está a lista de arquivos ou padrões nos quais você deseja fazer a substituição.
Você pode usar o Vim no modo Ex:
for b in *.txt
do
ex -sc '%s/OLD/NEW/g|x' "$b"
done
% selecione todas as linhas
s substituto
g substitua todas as instâncias em cada linha
x salvar e fechar