免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 652 | 回复: 0
打印 上一主题 下一主题

sed使用手册 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-03-31 20:53 |只看该作者 |倒序浏览

                在sed语句,正则表达式必须封闭在//中间。如/^$/d,删除空行。   sed地址
     在sed地址管理中,默认是对全局进行操作,同时地址可以分为行地址和模式地址。
     如1,10d  12d  10,$d  表示行地址
     如/^$/d  表示模式地址。
     用户在进行操作时,可以对行地址和模式地址一起结合进行操作。如1,/^$/d 表示删除第一行到第一个空行之间的所有内容。sed地址嵌入
  address {
     address
      command1
      command2
    }替换命令
   语法格式:
[address]s/old/new/flags
flags如下:
n:1~512之间的数字,表示对本模式中指定的匹配行中出现第n次的情况时进行替换,其它行不进行替换。
如sed 's/unix/UNIX/2' sed.txt 替换每行中第个unix字符,将其转换成大写UNIX。
g:表示对全局进行替换。
p:打印模式空间的内容。即打印匹配行的内容。
w file:表示匹配行的内容写到另一个文件中。   注意:定界符可以使用多种,如“/”“#”“,”“!”等  s/     */ /g表示任意多个空格,用一个空格代替。
  s/unix/aa&bb/g 表示将unix替换成aaunixbb。删除命令
   语法格式:
[address]d
  如/^\.aa/d  删除.aa开头的内容。   
/^$/d  删除空行的内容。     (应用到了模式地址)
10d  删除第10行的内容。       (应用到了行地址)追加命令
   语法格式:
[line-address]a\text
   如sed '10a\abcd' sed.txt   在sed.txt文件中的第10行后面追加一行abcd字符。
sed '/unix/a\abcd\\ndcba' sed.txt  在sed.txt文件中所有出现unix字符的行后面追加一行abcd\ndcba字符
sed '/unix/a\abcd\n\dcba' sed.txt  在sed.txt文件中所有出现unix字符的行后面追加两行字符,其中第一行为abcd第二行为dcba。插入命令
   语法格式:
[line-address]i\text
   如 sed '/unix/i\adflajflad\n\adfadfajdlf' sed-s.txt  在sed.txt文件中所有出现unix字符的行前面追加两行字符,其中第一行为abcd第二行为dcba。更改命令
   语法格式:
[address]c\text
   如sed '1c\aaaa' sed-s.txt  将第一行的内容更改为aaaa.转换命令
    语法格式:
[address]y/old/OLD/  将小写的old转换成大写的OLD字符。
使用y命令时,需要注意转换的字符个数一定要相同,当转换的字符个数不相同时,系统将提示错误。打印行号
   语法格式:
[address]=   打印匹配行的行号。
   如 sed '/unix/=' sed.txt  打印sed.txt文件中,包含unix字符的行号。不包含unix字符的行,不打印行号。
sed  '/yes/=' /etc/ssh/sshd_config 下一步,next
   语法格式:
[address]n  next改变正常的流控制,执行完这一步时,不返回,而是执行下一步内容。读/写文件
   语法格式:
[line-address]r file  读文件。
[address]w file   写文件。  如sed '/unix/r 1.txt' sed-s.txt 在unix字符的后面,读入1.txt文件
sed '2r 1.txt' sed-s.txt 在第2行后面,读入1.txt文件
sed '2,5w 2.txt' sed-s.txt 将第2行到第5行的内容,写到2.txt文件中去。退出
   语法格式:
  [address]q
  如sed ‘100q’ sed.txt  读到第100行时,退出。
  sed '/unix/q' sed.txt  遇到第一个unix字符时退出。
       
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/29638/showart_513080.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP