曲径通幽论坛

标题: 使用 w 命令提取文件内容并写到指定文件中 [打印本页]

作者: beyes    时间: 2012-1-29 17:29
标题: 使用 w 命令提取文件内容并写到指定文件中
sed 提供了 'w' 命令,利用它可以将匹配内容写到一个新文件中。

测试文本内容如下:
[beyes@beyes   sed]$ ls
temp.txt  test.txt
[beyes@beyes   sed]$ cat test.txt
1. Linux - Sysadmin, Scripting etc.
2. Databases - Oracle, mySQL etc.
3. Hardware
4. Security (Firewall, Network, Online Security etc)
5. Storage
6. Cool gadgets and websites
7. Productivity (Too many technologies to explore, not much time available)
8. Website Design
9. Software Development
10.Windows- Sysadmin, reboot etc.

1. 将第一行内容写到一个新文件中:
[beyes@beyes   sed]$ sed -n '1w output.txt' test.txt
[beyes@beyes   sed]$ cat output.txt
1. Linux - Sysadmin, Scripting etc.

2. 将第一行和最后一行内容写到文件中
[beyes@beyes   sed]$ sed -n -e '1w output.txt' -e '$w output.txt' test.txt
[beyes@beyes   sed]$ cat output.txt
1. Linux - Sysadmin, Scripting etc.
10.Windows- Sysadmin, reboot etc.


3. 将具有匹配 Sysadmin 和 Storage 的行写到文件中
[beyes@beyes   sed]$ sed -n -e '/Storage/w output.txt' -e '/Sysadmin/w output.txt' test.txt
[beyes@beyes   sed]$ cat output.txt
1. Linux - Sysadmin, Scripting etc.
5. Storage
10.Windows- Sysadmin, reboot etc.

4. 将匹配行开始直到最后一行写到文件中
[beyes@beyes   sed]$ sed -n '/Storage/,$w output.txt' test.txt
[beyes@beyes   sed]$ cat output.txt
5. Storage
6. Cool gadgets and websites
7. Productivity (Too many technologies to explore, not much time available)
8. Website Design
9. Software Development
10.Windows- Sysadmin, reboot etc.

5. 将匹配行及其后两行写到文件中
[beyes@beyes   sed]$ sed -n '/Storage/,+2w output.txt' test.txt
[beyes@beyes   sed]$ cat output.txt
5. Storage
6. Cool gadgets and websites
7. Productivity (Too many technologies to explore, not much time available)





欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2