Linux 文本编辑工具 sed

简介

  • Linux三剑客之一,以行为单位的文本编辑工具 sed可以直接修改档案。
  • 使用方法:
    sed [-nef] '[动作]' [输入文本]
sed相关命令集选项参数
  • -n : 安静模式
  • -e : 多重编辑
  • a 新增, a 后面可以接字符串, 而这个字符串会在新的一行出现. (下一行)
  • c 取代, c 后面的字符串, 这些字符串可以取代 n1,n2之间的行
  • d 删除, 后面不接任何东西
  • i 插入, 后面的字符串, 会在上一行出现
  • p 打印, 将选择的资料列出, 通常和 sed -n 一起运作 sed -n ‘3p’ 只打印第3行
  • s 取代, 类似vi中的取代
  • q 退出, 匹配到某行退出, 提高效率
  • r 匹配到的行读取某文件
  • w file, 匹配到的行写入某文件

举例说明

  • 说明:其中分隔符#,可以使用/,%,@等替代
  1. 替换
//将"your" 替换为 "my"
sed 's#your#my#g' poetry.txt
//结果 真实替换
  1. 删除操作
//删除第一行
sed '1d' poetry 
//会显示除了第一行之外的所有行, 因为第一行已经被删除了(实际文件并没有被删除)

//删除从第二行到最后一行所有的内容
sed '2,$d' poetry 
//$符号正则表达式中表示行末尾, 没有说明哪行末尾, 就会指最后一行末尾,
 ^开头, 如果没有指定哪行开头, 就是第一行开头

//文件中所有带 test 的行, 全部删除
sed '/my/d' poetry

遇到的问题

  • mac下用sed报错 command c expects \ followed by text
    使用命令:sed -i 's/xxxx/yyyyyyy/g' nginx.conf

  • 原文简述

-i extension
             Edit files in-place, saving backups with the specified extension.  If a zero-length extension is
             given, no backup will be saved.  It is not recommended to give a zero-length extension when in-
             place editing files, as you risk corruption or partial content in situations where disk space is             exhausted, etc.
  • 解决
    `sed -i ‘’ ‘s/xxxx/yyyyyyy/g’ nginx.conf``
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值