Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Jan 2005 10:56:48 -0500 (EST)
From:      Jerry McAllister <jerrymc@clunix.cl.msu.edu>
To:        freebsd-questions@freebsd.org
Cc:        Jerry McAllister <jerrymc@msu.edu>
Subject:   Re: One-line global string replace in all files with sed (or awk?)
Message-ID:  <200501261556.j0QFumN03395@clunix.cl.msu.edu>
In-Reply-To: <1878149195.20050126164325@wanadoo.fr> from "Anthony Atkielski" at Jan 26, 2005 04:43:25 PM

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?

Check out tr(1).
There are other ways, but for basic stuff, it is easy and fast.  
I use it often for stripping out the extra CRs from MSDOS files.

    Something like:
              tr -d "\r" < dirtydos > cleanunix
does the trick.
But it will do replaces and pretty much anything.  Its syntax is
a little different that regular expressions type (maybe a little
easier actually) so read the man page.

////jerry
 
> -- 
> Anthony
> 
> 
> _______________________________________________
> freebsd-questions@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe@freebsd.org"
> 



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