SED command, We can do a lot of things with it but let's start with basics and let's see where we can use SED in most common places.
SED means 'Stream Editor'. when we execute a SED command the output will be redirected on to the interface so in order to save the output use a file to store the redirected results.
eg. sed -n '1p' test.txt > test1.txt
Here p is used to print and '1' represents line no. -n used to suppress redundancy. If we use only 'p' option then all the lines will be printed twice.
--> To print the first line of the file
sed -n '1p' test.txt or sed '2,$d' test.txt
Here '2,$d' means deleting all the lines from from second line to the last line. 'd' means delete
--->To print first and last line of the file
sed -n '1p;$p' test.txt
Here we use ';' to separate two statements. we can use any line no to print and delete just by changing line no's say sed -n '4p' test.txt will print 4th line of the file similarly for deleting also
--->To print lines between some range
sed -n '2,4p' test.txt
Here it will print all the lines from second till fourth.
---> To replace values
sed 's/aaa/bbb/g' test.txt
Here the string 'aaa' is replaced with 'bbb' in complete file. 'g' represents globally. 's' represents substitute. If we need to replace only in specific lines then sed '2,10 s/aaa/bbb/' test.txt
--->To work like GREP command
sed -n '/bbb/p' test.txt
Here will return the string it it's present. To work like grep -v command we can do in the following way
sed -n '/bbb/!p' test.txt
Here Will return all the strings which are not 'bbb'
Hope this article helps you in basic understanding of SED command
SED means 'Stream Editor'. when we execute a SED command the output will be redirected on to the interface so in order to save the output use a file to store the redirected results.
eg. sed -n '1p' test.txt > test1.txt
Here p is used to print and '1' represents line no. -n used to suppress redundancy. If we use only 'p' option then all the lines will be printed twice.
--> To print the first line of the file
sed -n '1p' test.txt or sed '2,$d' test.txt
Here '2,$d' means deleting all the lines from from second line to the last line. 'd' means delete
--->To print first and last line of the file
sed -n '1p;$p' test.txt
Here we use ';' to separate two statements. we can use any line no to print and delete just by changing line no's say sed -n '4p' test.txt will print 4th line of the file similarly for deleting also
--->To print lines between some range
sed -n '2,4p' test.txt
Here it will print all the lines from second till fourth.
---> To replace values
sed 's/aaa/bbb/g' test.txt
Here the string 'aaa' is replaced with 'bbb' in complete file. 'g' represents globally. 's' represents substitute. If we need to replace only in specific lines then sed '2,10 s/aaa/bbb/' test.txt
--->To work like GREP command
sed -n '/bbb/p' test.txt
Here will return the string it it's present. To work like grep -v command we can do in the following way
sed -n '/bbb/!p' test.txt
Here Will return all the strings which are not 'bbb'
Hope this article helps you in basic understanding of SED command
Comments
Post a Comment