recursively find/replace text in files
gerrynix
gerrynix at yahoo.com
Fri Oct 14 22:14:01 UTC 2005
> > hi..
> >
> > can't find my old solution to this!! need to know how to find/replace
> > 'text'
> > in files in a directory tree. i'd like to be able to either do all files,
> > or
> > all files of a specific extension
> >
> > replace "foo" with "bar" in all files in the dir tree
> > replace "foo" with "bar" in all (*.cpp) files in the dir tree
>
> something like:
>
> find . -type f -name "*.cpp" -exec sed -i 's/foo/bar/g' {} \;
>
> --
perl also has a similar funcionality
find . -type f -name "*.cpp" -exec perl -pi -e 's/foo/bar/g' {} \;
This is also portable to standard UNIX systems with perl installed.
(standard UNIX sed has no -i option).
--
Nix
More information about the fedora-list
mailing list