SED with utilities

advertisement
e-Infochips Institute of Training Research and Academics Limited
Click to add Title
SED & it’s Utilities
By :- Priyambada Mishra
Prachi Trivedi
Milin Parekh
Karishma Babani
1
I N D E X
●
●
●
●
●
●
●
●
●
●
Comparison
Overview
Syntax (workflow)
SED Architecture
Loops and branches using SED
Another Basic Commands
Examples
Assignment Questions
REGEX
Strings and Special characters
2
COMPARISON
3
OVERVIEW
What is SED?
● A non-interactive Stream editor.
● A tool usually designed for a short line substitution,
deletion and print.
● SED reads the data one line at a time, make a copy
of the input line & places it in a buffer called the
pattern space.
● Modifies that copy in the pattern space.
● Outputs the copy to standard output.
IS THERE ANY CHANGE IN THE ORIGINAL FILE?
4
S Y N T A X
5
SED
ARCHITECTURE
6
PATTERN SPACE & HOLD SPACE
7
BRANCHING
PS: N is used to read next input lline
8
SOME BASIC COMMANDS AND EXAMPLES
COMMANDS
FILE
COMMANDS
QUIT
BRANCH
TRANSFORM
MODIFY
LINE NUMBER
HOLD SPACE
9
FILE
COMMANDS
WRITE (w)
READ (r)
EXECUTE (e)
10
11
Q U I T C O M M A N D (Q)
● instructs the SED to quit the current execution flow
● when the address is encountered, it simply stops the current execution.
SYNTAX
[address]q
EXAMPLE
12
T R A N S F O R M C O M M A N D (Y)
● transforms the characters by position
● regular expressions and character classes are unsupported
● cannot indicate a range of characters
SYNTAX
[address1[,address2]]y/list-1/list-2/
● both lists must be explicit character lists
● the size of list 1 and list 2 must be same.
EXAMPLE
13
MODIFY
APPEND
INSERT
DELETE
CHANGE
SUBSTITUTE
14
A P P E N D C O M M A N D (a)
● adds one or more lines directly to the output
● it cannot be used with a range address
SYNTAX
[address]a\
Append text
EXAMPLE
15
C H A N G E C O M M A N D (c)
● replace an existing line with new text
● accepts four address types:
single-line, set-of-line, range, and nested addresses
SYNTAX
[address1[,address2]]c\
Replace text
EXAMPLE
16
D E L E T E C O M M A N D (d)
● removes lines only from the pattern buffer
● original file remains unchanged
SYNTAX
[address1[,address2]]d
EXAMPLE
17
D A T A S E T
●
●
●
●
Hello i am Milin parekh
i am the bla bla bla
i have the habbit of bla bal bla
i have graduated from the VVP
engineering college
● i have fond of bal bla bla
1p
2p
3p
4p
.
$p
18
s - substitute
p- print / duplicate
d - delete
g - global
sed -n ‘/run/!p’ bite.txt
sed -n ‘/^$/p;p’ fight.txt
sed -n ‘/Atul/p’ salary.txt
19
REGEX
● It is the regular expressions that make SED powerful and
efficient. A number of complex tasks can be solved with
regular expressions.
Start of Line (^)
sed -n -e '/^3/ p' books.txt
End of line ($)
sed -n -e '/Coelho$/ p' books.txt
20
SIngle Character(.)
Zero on One
Occurrence (\?)
Escaping
Characters(\)
$ echo -e "cat\nbat\nrat\nmat\nbatting\nrats\" | sed -n '/^..t$/p'
$ echo -e "Behaviour\nBehavior" | sed -n '/Behaviou\?r/ p'
Pipe(|)
Exclusive Set
([^])
Zero or More
Occurrence
(*)
Match
Character Set
([])
21
STRINGS
22
STRING
S U B S T I TU T I O N
23
SUBSTITUTION OF
CHARACTER
24
SPECIAL
CHARACTER
25
REFERENCES
www.tutorialspoint.com/sed/
www.geeksforgeeks.com
26
27