vi +'bufdo %s/pattern/replacement/g | update' +q $(grep -rl pattern /path/to/dir)
bufdo %s/pattern/replacement/g | update
= perform the pattern substitution in all files and save the changesq
= exit viThe :bufdo command might not be there in old versions of vim.