shell编程-sed

34 篇文章 0 订阅

sed(流编辑)

sed 是一种在线的、非交互式的编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。
接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;

与grep一样,sed在文件查找模式时也可以使用正则表达式和各种元字符正则表达式是括在斜杠间的模式,用于查找和替换。
格式 : sed 选项 命令 文件
返回值 : 都是0,对错不管。只要命令存在语法错误时,sed的退出状态才不是0

常用命令:

d //删除命令----sed -r “/root/d” 1.txt (查找然后删除)
s //替换命令----sed -r “s/root/zz/” 1.txt (查找把所有的root换成zz)
r //读文件命令----sed -r " $ r 2.txt" 1.txt (读取2号文件,并在尾行添加2号文件的内容)
w //写文件命令,另存为----sed -r “w 2.txt” 1.txt (读取文件1并写入到2.txt文件)
a //追加命令(之后)----sed -r “a111” 1.txt (在每行后面都追加111,也可自由选择在第几段后面添加)
i //插入命令 (之前)----sed -r “2iaaaaa” 1.txt (在第二行前面添加aaaaa)
c //替换整行命令----sed -r “2c333” 1.txt (把第二行内容替换成333)
n //获取下一行命令----sed -r “/root/{n;d}” 1.txt (查找root然后把后面一行删除)
! //反向选择----sed -r “2,$!d” 1.txt (除了第二行其他内容全部删除)
e //多重编辑---- sed -r -e ‘1,3d’ -e ‘4s/adm/admin/g’ passwd (执行完一个命令后-e继续执行其他命令)

暂存空间

暂存和取用命令:
h覆盖暂存空间
H追加暂存空间
g覆盖行
G追加行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值