sed -i命令详解

[root@www ~]# sed [-nefr] [动作]
选项与参数:
-n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。
-e :直接在命令列模式上进行 sed 的动作编辑;
-f :直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作;
-r :sed 的动作支持的是延伸型正规表示法的语法。(默认是基础正规表示法语法)
-i :直接修改读取的文件内容,而不是输出到终端。动作说明: [n1[,n2]]function
n1, n2 :不见得会存在,一般代表『选择进行动作的行数』,举例来说,如果我的动作是需要在 10 到 20 行之间进行的,则『 10,20[动作行为] 』function:
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
p :列印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

sed -i 就是直接对文本文件进行操作的

sed -i 's/原字符串/新字符串/' /home/1.txt
sed -i 's/原字符串/新字符串/g' /home/1.txt

这两条命令的区别就是,看示例吧

这是1.txt的内容

#cat 1.txt
d
ddd
#ff

再看执行这两条命令的区别吧

sed -i 's/d/7523/' /home/1.txt
执行结果
7523
7523dd
#ffsed -i 's/d/7523/g' /home/1.txt
执行结果
7523
752375237523
#ff

去掉 “行首” 带“@”的首字母@

sed -i 's/^@//' file

特定字符串的行前插入新行

sed -i '/特定字符串/i 新行字符串' file

特定字符串的行后插入新行

sed -i '/特定字符串/a 新行字符串' file

特定字符串的删除

sed -i '/字符串/d' file

本文转自:http://www.cnblogs.com/ev-zhk/p/4277023.html

sed -i命令详解相关推荐

  1. sed -i命令详解及入门攻略

    sed 是一个比较古老的,功能十分强大的用于文本处理的流编辑器,加上正则表达式的支持,可以进行大量的复杂的文本编辑操作.sed 本身是一个非常复杂的工具,有专门的书籍讲解 sed 的具体用法,但是个人 ...

  2. sed -i 命令详解

    # 对每行匹配到的第一个字符串进行替换 sed -i 's/原字符串/新字符串/' ab.txt # 对全局匹配上的所有字符串进行替换 sed -i 's/原字符串/新字符串/g' ab.txt # ...

  3. shell编程之进阶篇三常见命令详解

    常见命令详解 接下来我们介绍一些shell脚本中经常使用的linux命令:grep.sed.awk.find grep命令详解 grep命令是我们常用的一个强大的文本搜索命令. 命令格式详解 grep ...

  4. linux sed p变量,Linux sed 命令详解系列教程之各种问题解决

    本文目录: 1 sed中使用变量和变量替换的问题 2 反向引用失效问题 3 "-i"选项的文件保存问题 4 贪婪匹配问题 5 sed命令"a"和"N& ...

  5. 【转】【Linux】sed命令详解

    sed命令详解 sed是stream editor的简称,也就是流编辑器.它一次处理一行内容,处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space ...

  6. cut\grep\awk\sed命令详解

    cut\grep\awk\sed命令详解 1.cut命令详解及实例 (1)作用:提取文件中指定的列 语法格式:cut  选项  文件名   (2)选项作用:      -d 分隔符     按照指定的 ...

  7. LInux sed命令详解

    文章转自:http://qifuguang.me/2015/09/21/sed%E5%91%BD%E4%BB%A4%E8%AF%A6%E8%A7%A3/#comments sed命令详解 sed是st ...

  8. linux 之sed命令详解

    sed命令详解 sed是什么 sed是linux文本处理三剑客之一,全称 StreamEDitor,非常著名的行编辑器,功能十分强大. sed的工作过程 sed处理文本时每次从文件复制出来一行,放在工 ...

  9. sed是linux命令吗,Linux12_ sed命令详解

    sed意为"流编辑器(stream editor)" 字符串筛选工具. 对一个文档中的行进行操作 和vi编辑很相似.可以查看vim使用命令详解 1 sed基本格式 第一种 sed ...

最新文章

  1. centos6.0下ffmpeg的安装编译经历
  2. docker安装和配置Grafana
  3. PAT甲级1025 PAT Ranking:[C++题解]排序、结构体、排名
  4. 【行业】十张图告诉你传统企业与互联网怎样融合
  5. 为什么EClipse不显示错误
  6. mac docker 共享_如何在Docker for Mac中加快共享文件访问
  7. android屏幕录制鸿洋,Android之自定义View笔记(鸿洋)
  8. python 模块路径查找 及 添加
  9. android 程序员 计算器,程序员计算器(进制转换)
  10. 汉庭董事长季琦:成功创业者的必经之路
  11. 人人商城图片错乱问题
  12. 重学计算机组成原理(一) —— 冯诺伊曼结构
  13. 解决表格刷新时抖动闪烁问题
  14. Matlab如何画对比柱状图
  15. 完爆90%的性能毛病,收好数据库优化八大通用绝招
  16. Java 输出杨辉三角
  17. Android Studio Gradle 下载过慢?Gradle 配置阿里云镜像
  18. 如何将Klocwork与Incredibuild一起使用来提高DevOps生产效率
  19. Teamcenter FMS
  20. idea 实时更新html页面

热门文章

  1. 微信小程序获取手机号登录(Java后端)
  2. 不限专业的计算机证书,不限专业可以考的证书有哪些
  3. quick bms的使用
  4. YzmCMS内容管理系统 简单搭建一个自己的本地网站
  5. NE40E/NE80E 端口镜像抓包
  6. java 读取project_java 导入读取.mpp project文件(甘特图)
  7. 核电仿真卡项目技术回顾 -- 串口通讯、以太网通讯的对比
  8. php聊天室的设计实现,基于PHP+MySQL的聊天室设计
  9. python 实现聊天室
  10. 基于matlab弹道方程代码,基于Matlab/Simulink的弹丸外弹道6自由度运动仿真