Just picked up a little bit of sed kungfu today while pairing with jeff.
In-place editing with “-i”
If you want to do in-place editing of a file, you can pass the
-i option to sed. Let’s say we have the following file:
1
 |  | 
With:
1
 |  | 
We get:
1
 |  | 
So how do i acheive this previously ?? This is embarrassing, it used to be like this:
1 2  |  | 
Replacing only lines matching pattern
Let’s say you have the following file:
1 2  |  | 
We want to replace only the line with the occurrence of “sed”. We
can acheive it using the script command
/<pattern>/s/<original-text>/<replacement-text>, just like this:
1
 |  | 
This is what we get in stdout:
1 2  |  | 
Happy Sed-ing :)