Sed: Difference between revisions

From Hackepedia
Jump to navigationJump to search
m New page: == Introduction == Sed stands for stream editor and it does just that, it edits a stream. There is many uses for it for example in the well known substitution mode. == sed and substitu...
 
mNo edit summary
Line 24: Line 24:


You see the last two entries of a 48 line file.
You see the last two entries of a 48 line file.
== sed and printing certain rows ==
Pretend you need to work on the first entry in the /etc/passwd file:
francisco$ sed -n 1p /etc/passwd
root:*:0:0:Charlie &:/root:/bin/ksh

Revision as of 05:05, 2 July 2008

Introduction

Sed stands for stream editor and it does just that, it edits a stream. There is many uses for it for example in the well known substitution mode.


sed and substitution

Using the s allows the results to be substituted like so:

echo one two three four five six seven eight nine | sed -e 's/one/bleep/g' -e 's/five/bleep/g'

would result in:

bleep two three four bleep six seven eight nine


sed and deleting

If I wanted to delete lines 1 through 46 the syntax would be so:

francisco$ sed -e '1,46d' /etc/passwd   
_postfix:*:507:507:Postfix Daemon:/var/empty:/sbin/nologin
testuser:*:1001:1001:test:/usr/home/testuser:/bin/ksh

You see the last two entries of a 48 line file.

sed and printing certain rows

Pretend you need to work on the first entry in the /etc/passwd file:

francisco$ sed -n 1p /etc/passwd
root:*:0:0:Charlie &:/root:/bin/ksh