欢迎登陆真网站,您的到来是我们的荣幸。 登陆 注册 忘记密码? ☆设为首页 △加入收藏
欢迎加入真幸福QQ群
电脑知识: 基础知识 网络技术 操作系统 办公软件 电脑维修 电脑安全 windows7 windows8 windows10 服务器教程 平板电脑 视频播放教程 网络应用 互联网 工具软件 浏览器教程 QQ技巧 输入法教程 影视制作 YY教程 wps教程 word教程 Excel教程 PowerPoint
云南西双版纳特产小花糯玉米真空包装


Linux系统中用户管理的基本命令整理
Linux系统的服务器的DNS相关配置
Linux系统基本的内存管理知识讲解
WPS演示中的插入、替换、删除及编辑背景音效的方法
Win8如何显示快速启动栏
Word2013怎么转换兼容模式
win7系统按快捷键ctrl+shift切换输入法没响应怎么办
录酷怎么录制英雄联盟LOL游戏直播视频
搜狐影音如何下载视频电影综艺电视剧
Win8忘记密码如何解锁BitLocker
Linux下sed命令使用全解析
【 来源:网络 】【 点击:4 】 【 发布时间:2017_03_03 08:59:59 】

   一、Sed简介

  Sed:Stream Editor 流式编辑器 又称行编辑器,每次只编辑一行。Sed工作是在“模式空间”中进行的,并不操作源文件。对源文件无危害。

  二、Sed使用格式

  Sed命令的常用格式如下:

  (1)Sed [options] ‘script’ input_file…

  (2)Sed [options] –f script_file input_file…

  (3)Sed [options] ‘ADDR1,ADDR2command’ input_file…

  例如:#sed ’1,2d’ fstab 就可以将fstab的前两行删除并显示出来,但是它不会改变源文件。

  #Sed ‘1,2!d’ fstab 表示删除除第一行和第二行之外的所有行。

  (4)Sed [options] ‘/PATTERN/command’ input_file……

  &:s/l..e/&er/:表示引用前面匹配到的所有字符。

  例如:sed ‘/[[:upper:]]/d’ binary.sh 表示删除所有的大写字母的行。

  (5)Sed ‘/PATTERN1/,/PATTERN2/command’ input_file……

  说明:这表示从第一次被PATTERN1匹配到的行到第一次被PATTERN2匹配到的中间的所有行执行command命令。

  三、Sed的常用选项:

  -n:只显示sed匹配到的行。其余行不显示。下文有范例。

  -i :可以直接操作原文件。默认情况下sed不会改变原文件,但是-i选项可以修改原文件,此选项应慎用。

  -r:可以使用标准正则表达式。默认情况下sed只支持基本正则表达式,但是加上-r选项后则支持扩展正则表达式

  -e:多脚本共用。可以同时执行多个命令。例如:

  代码如下:

  [root@localhost ~]# sed -e 's@@H1@g' -e 's@(l..e).@1r.@g' test

  He love His lover.

  She like Her liker.

  Dove love Her liker.

  也可以这样用,中间用分号隔开:

  代码如下:

  [root@localhost ~]# sed 's@@H1@g;s@(l..e).@1r.@g' test

  四、使用示例

  代码如下:

  #sed -e 命令行处理 -a 新增

  > sed -e '$ a widuu' test.txt #在test.txt的结尾处添加widuu

20151026113212056.png (426×100)

  代码如下:

  # 把-e换成-n

  > sed -n '$ a widuu' test.txt # 只显示被处理的一行

20151026113238876.png (402×48)

  代码如下:

  # -c 替换多少行 为你制定的字符串,这里我的test.txt内容如图

  > sed -e '2,5c xiaowei' test.txt #把2-5行替换成字符串xiaowei

20151026113258767.png (465×267)

  代码如下:

  # 多命令执行 -e

  > sed -e '2,5c xiaowei' -e 's/cccc/widuu/' test.txt

20151026113315497.png (599×134)

  代码如下:

  # -i 不输出 -s 替换

  >sed -i 's/111111/widuu/g' test.txt

20151026113350275.png (535×319)

  代码如下:

  # i 插入 自定义的字符串 在test.txt的第二行插入xiaowei

  > sed -e '2i xiaowei' test.txt

20151026113425957.png (508×321)

  代码如下:

  # d 删除输入任何字符串

  > sed -e '2d' test.txt #删除第二行

20151026113448647.png (432×290)

本网站由川南居提供技术支持,fkzxf版权所有 浙ICP备12031891号
淳安分站 淳安分站