sed【一】

sed是流编辑器,简单的说就是对输入只进行一次扫描,执行相应的操作,然后输出。通常是以行为单位,读入一行,处理操作,输出一行,输入可以是文件或管道,默认输出为标准输出。因此又可以称 "行编辑器“

比较适合用于需要重复处理的编辑任务,比如替换操作。

当前处理的行被缓存在 parttern space 模式空间中,处理完成,即从模式空间删除,加入新的行处理,如此循环。

sed的命令格式

 NAME
     sed -- stream editor


SYNOPSIS
     sed [-Ealn] command [file ...]
     sed [-Ealn] [-e command] [-f command_file] [-i extension] [file ...]

-E 指定正则

-a 没看明白

-l缓存输出的行,有啥用??

-n取消输出到标准输出


-e 接处理命令

-f 包含处理命令的文件

-i 在输入文件中本地处理,即会修改文件,因此接用于备份文件的后缀名,如果为空,则不备份之前的文件。

【file】 表示输入的文件

sed 命令 ,如果只有一个命令,可以不写-e ,如果有多个则应该在每天命令前加-e,或者统一写如脚本文件,每个命令用分号结尾。

sed指令可以用 单引号包含,或双引号包含,或者不用引号。一般用单引号,特殊字符需要使用 反斜扛。

但指令包含使用$var变量时,需要使用双引号。 


XX>sed

abc

abc

如上所示为未指定输入,即输入为标准输入。处理时 模式空间中的内容,sed会自动输出到标准输出,因此输入abc,会输出abc。

-n 可以屏蔽输出。

XX>sed -n

abc

XX>sed -n p

abc

abc

cd

cd

p 表示打印处理的行,另外还可以指定需要输出的行


XX>sed -n 1p

abc

abc

cd

1p表示输出第一行后,第二行就不输出了 。


从文件输入处理内容,test为文件,内容为

line 1

line2

以下为测试的命令,结果未贴出。



  589  sed  -e '' test
  590  sed  -e 'p' test

  583  sed -e 'p' ./test
  584  sed -ne 'p' ./test
  585  sed -ne 'p' test



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值