On 2005-01-26 16:55, Miguel Mendez <[EMAIL PROTECTED]> wrote: > On Wed, 26 Jan 2005 16:43:25 +0100 > Anthony Atkielski <[EMAIL PROTECTED]> wrote: >> 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? > > How about something like this (sh style)... > > for i in `find . -type f`; do sed -i -e 's/string1/string2/g' $i; done
Nope. This will potentially overflow the command line limit of some shells and fail. The best way I know is to use find/xargs/sed: find . -type f | xargs sed -i '' -e 's/foo/bar/g' _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"