Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Jan 2005 11:30:53 -0500
From:      Al Johnson <aj334x5l@tampabay.rr.com>
To:        freebsd-questions@freebsd.org
Subject:   Re: One-line global string replace in all files with sed (or awk?)
Message-ID:  <20050126163053.GA4619@bhunter.net>
In-Reply-To: <20050126165505.06d2b3d4.flynn@energyhq.es.eu.org>
References:  <1878149195.20050126164325@wanadoo.fr> <20050126165505.06d2b3d4.flynn@energyhq.es.eu.org>

next in thread | previous in thread | raw e-mail | index | archive | help
> A few years ago, I'm sure I came across a one-line way of replacing
> every occurence of one string with another in an entire directory of
> files (potentially including all subdirectories as well).  I think it
> used sed or awk.  Now I can't find it.  The examples on the Web are all
> multiline scripts or programs, but I'm sure I saw a way to do it all on
> just one line.
> 
> Can anyone tell me how to do this?

Try this.

Global search and replace, with backup:
# find . -type f | xargs sed -i.bak "s/oldtext/newtext/g"

-- 
Kids can get a free PlayStation 2!
http://www.landoverbaptist.org/news0104/ps2.html



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050126163053.GA4619>