Hands-off editing with sed, Part 1
With the sed utility (otherwise known as the Unix stream editor), you can alter files without opening them in an interactive editor. Instead, you use sed to specify a series of rules (edits) or transformations that you want applied to lines of text, then apply them to your file.
sed is not suitable as a general purpose editor, and is best used to apply a set of modifications to text, particularly if you're managing more than one file. If you want to run a series of once-only edits, you are better off directly editing a file using vi or Emacs, as using sed will take much longer. But if you need to make systematic changes across multiple files, then sed is your best bet.
For example, suppose you've written a book using vi. In it, your heroine is named Brunhilda Mathewhowsenstern, to whom you occasionally apply the nickname Brunie. You have already saved each of the book's 66 chapters as separate text files -- chap01.txt, chap02.txt, etc. -- and have just received the go-ahead from your publisher when, horror of horrors, a real person named Brunhilda Mathewhowsenstern shows up and threatens a suit if you use her name in the book. After considerable research you discover that the name Mathilda Leapfrogandrun is unclaimed by any litigious miscreants, so you resolve to change your heroine's name to this, with the new nickname Mattie replacing Brunie. You might think that you have a lot of work ahead of you, since you have to open all 66 files in vi or some other editor to make this fix.
At this point, the real heroine, the sed utility, rides to the rescue, allowing you to devise a script of editing actions to be applied one after another to each of the 66 chapters. You will be able to effect these changes without opening a single file. The script will apply three rules:
- Locate all instances of "Brunhilda" and change them to "Mathilda"
- Locate all instances of "Mathewhowsenstern" and change them to "Leapfrogandrun"
- Locate all instances of "Brunie" and change them to "Mattie"
How will all this work? Let's cover some basic features of the sed utility to find out.
Some sed basics
We'll start our exploration of sed with the following command:
Sign up for ITworld's Daily newsletter
Follow ITworld on Twitter @IT_world
jfruh
Apple syncing patent can't come soon enough
pasmith
New Twitter features borrow from 3rd party clients
Esther Schindler
Open Source Changes the Software Acquisition Process
mikelgan
How to set up continuous podcast play on the new iTunes
David Strom
Five important Windows 7 mobility features
sjvn
Guard your Wi-Fi for your own sake
Sandra Henry-Stocker
Grepping on Whole Words
Sidekick: The Good News & the Bad News
Either way you look at it Microsoft Data Center management did not follow standards or best practices in this failure. In which case it makes me wonder more about the outsourcing of corporate data much less personal data.
- mburton325
Join the conversation here
Quick, practical advice for IT pros. Made fresh daily.
Want to cash in on your IT savvy? Send your tip to tips@itworld.com. If we post it, we'll send you a $25 Amazon e-gift card.













