本文共 2107 字,大约阅读时间需要 7 分钟。
Question: Is it possible for me to combine multiple sed commands? Can I combine two sed commands and execute it as single sed command?
Answer: In our previous articles we learned sed with single commands — , , and .
In this article let us review how to combine multiple sed commands using option -e as shown below.
Syntax:#sed -e 'command' -e 'command' filename
Note: -e option is optional for sed with single command. sed will execute the each set of command while processing input from the pattern buffer.
Let us first create thegeekstuff.txt file that will be used in all the examples mentioned below.
# cat thegeekstuff.txt1. Linux - Sysadmin, Scripting etc.2. Databases - Oracle, mySQL etc.3. Hardware4. Security (Firewall, Network, Online Security etc)5. Storage6. Cool gadgets and websites7. Productivity (Too many technologies to explore, not much time available)8. Website Design9. Software Development10.Windows- Sysadmin, reboot etc.
This sed example deletes 4th and 2nd line from the file thegeekstuff.txt. Using “-e” option, you can give any number of commands with sed.
$ sed -e '4d' -e '2d' thegeekstuff.txt1. Linux - Sysadmin, Scripting etc.3. Hardware5. Storage6. Cool gadgets and websites7. Productivity (Too many technologies to explore, not much time available)8. Website Design9. Software Development10.Windows- Sysadmin, reboot etc.
This sed example prints all lines that matches either the pattern “Storage” or “Software”.
$ sed -n -e '/Software/p' -e '/Storage/p' thegeekstuff.txt5. Storage9. Software Development
This sed example deletes the first line, last line and all the blank lines from input file.
$ sed -e '1d' -e '$d' -e '/^$/d' thegeekstuff.txt2. Databases - Oracle, mySQL etc.3. Hardware4. Security (Firewall, Network, Online Security etc)5. Storage6. Cool gadgets and websites7. Productivity (Too many technologies to explore, not much time available)8. Website Design9. Software Development
转载地址:http://zyffb.baihongyu.com/