- 5
- 0
- 约1.6万字
- 约 10页
- 2021-10-03 发布于山西
- 举报
sed 对文本的处理很强大,并且 sed 非常小,参数少,容易掌握,他的操作方式根 awk 有点像。 sed 按顺序逐行读取文
件。然后,它执行为该行指定的所有操作,并在完成请求的修改之后的内容显示出来,也可以存放到文件中。完成了一行
上的所有操作之后,它读取文件的下一行,然后重复该过程直到它完成该文件。在这里要注意一点,源文件(默认地)保
持不被修改。 sed 默认读取整个文件并对其中的每一行进行修改。说白了就是一行一行的操作。我用 sed 主要就是用里面
的替换功能,真的很强大。下面以实例,详细的说一下,先从替换开始,最常用的。
一,测试文件 test, 讲 awk 时用的一样
1. [zhangy@BlackGhost mytest]# sed -h 打印帮助,并显示 bug 列表的地址。
2. -n, --quiet, --silent 取消自动打印模式空间
3. -e 脚本 , --expression= 脚本 添加 “脚本 ”到程序的运行列表
4. -f 脚本文件 , --file= 脚本文件 添加 “脚本文件 ”到程序的运行列表
5. --follow-symlinks 直接修改文件时跟随软链接
6. -i[ 扩展名 ], --in-place[= 扩展名 ] 直接修改文件 ( 如果指定扩展名就备份文件 )
7. -l N, --line-length=N 指定 “l ”命令的换行期望长度
8. --posix 关闭所有 GNU 扩展
9. -r, --regexp-extended 在脚本中使用扩展正则表达式
10. -s, --separate 将输入文件视为各个独立的文件而不是一个长的连续输入
11. -u, --unbuffered 从输入文件读取最少的数据,更频繁的刷新输出
12. --help 打印帮助并退出
13. --version 输出版本信息并退出
14.
15. // 下面 test 文件的内容
16. root:x:0:0:root:/root:/bin/bash
17. bin:x:1:1:bin:/bin:/bin/false
18. daemon:x:2:2:daemon:/sbin:/bin/false
19. mail:x:8:12:mail:/ var /spool/mail:/bin/false
20. ftp:x:14:11:ftp:/home/ftp:/bin/false
21. amp;nobody:$:99:99:nobody:/:/bin/false
22. zhangy:x:1000:100:,,,:/home/zhangy:/bin/bash
23. http:x:33:33::/srv/http:/bin/false
24. dbus:x:81:81:System message bus:/:/bin/false
25. hal:x:82:82:HAL daemon:/:/bin/false
26. mysql:x:89:89::/ var /lib/mysql:/bin/false
27. aaa:x:1001:1001::/home/aaa:/bin/bash
28. ba:x:1002:1002::/home/zhangy:/bin/bash
29. test:x:1003:1003::/home/test:/bin/bash
30. @zhangying:*:1004:10
原创力文档

文档评论(0)