sed

sed 是Stream Editor(流编辑器)缩写,是操 作过滤和转换文本内容的强大工具。常用功能有增删改查,过滤,取行。

2、增删改查

2.1 增

a 追加文本到指定行后

i 插入文本到指定行前

sed "2a 106,dandan,CSO" person.txt

sed "2i 106,dandan,CSO" person.txt

2.12 多行增加

 

sed "2a 106,dandan,CSO\n107,bingbing,CCO" person.txt

2.2删

d  删除指定的行

sed '2d' person.txt
sed '2,3d' person.txt
sed '1~2d' person.txt
sed '1,+2d' person.txt

sed '/zhangyao/d' person.txt
sed '/Al/d' person.txt
sed '/C/d' person.txt
sed '/F/d' person.txt

sed '/F/,/A/d' person.txt 

sed '/dongdaxia/d' person.txt
sed '/dongdaxia/,3d' person.txt
sed '/zhangyao/,3d' person.txt

2.3 改

2.3.1 按行替换

c  用新行取代旧行

sed '2c 106,dandan,CSO' person.txt 

2.3.2文本替换

s:单独使用——》将每一行中第一处匹配的字符串进行替换===》sed 命令·

g:每一行进行全部替换==》sed命令s的替换标志之一,非sed命令

-i:修改文件内容===》sed软件的选项

sed软件替换模型(方框被替换成三角)

 sed 's#zhangyao#wangzijie#g' person.txt

指定行精确修改配置文件,这样可以防止修改多了的地方

sed '3s#3#9#g' person.txt 

注意:

sed '3s#3#9#g' person.txt    ####后面的g为全局替换,
不加g 只对一个‘’进行操作。
单引号、双引号、没有引号的作用:

  

Linux三剑客之sed深度实践讲解(上)的更多相关文章

  1. Linux三剑客之sed深度实践讲解(下)

    2.3.4分组替换 \(  \) 和\1的使用说明 echo I am dongdaxia yingxiong. |sed 's#^.*am \([a-z].*\) yin.*$#\1#g' echo ...

  2. linux三剑客之sed深度实践

    参数: -a:追加文本到指定行后 -i:插入文本到指定行前 1.单行增加 [root@redhat~]#   sed  ' 2a  6,f '  linux.tet 1,a 2,b 6,f 3,c 4 ...

  3. linux三剑客grep|sed|awk实践

    最好先学习正则表达式的基本用法,以及正则表达式BREs,EREs,PREs的区别 此坑待填 grep sed awk

  4. Linux实战教学笔记12:linux三剑客之sed命令精讲

    第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...

  5. (转)不看绝对后悔的Linux三剑客之sed实战精讲

    不看绝对后悔的Linux三剑客之sed实战精讲 原文:http://blog.51cto.com/hujiangtao/1923718 二.Linux三剑客之sed命令精讲 1,前言 我们都知道,在L ...

  6. Linux 三剑客之sed

    目录 Linux 三剑客之sed 命令补充: sort命令 uniq命令 cut命令 tr命令 wc命令 三剑客 - sed 编辑模式: 定位分类: 实例如下: d模式--删除模式 p模式--打印 a ...

  7. day14 linux三剑客之sed命令

    day14 linux三剑客之sed命令 sed命令 Sed 主要用来自动编辑一个或多个文件.简化对文件的反复操作.编写转换程序等. sed(流式编辑器) : sed主要用来修改文件. 1.sed命令 ...

  8. Linux 三剑客 -- awk sed grep

    本文由本人收集整理自互联网供自己与网友参考,参考文章均已列出,如有侵权,请告知! 顶配awk,中配sed,标配grep awk 参考 sed 参考 grep 参考 在线查看linux命令速记表 app ...

  9. linux三剑客之sed命令

    一.前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件等等.如果我们相对这些文件进行一些编辑查询等操作时,我们可能会想到一些vi,vim,cat,more等命令.但是这些命令 ...

随机推荐

  1. 查看nginx服务器状态

    编译安装时使用--with-http_stub_status_module开启状态页面模块 [root@proxy ~]# yum -y install gcc pcre-devel openssl- ...

  2. CF1230 E. Kamil and Making a Stream gcd+暴力

    比赛的时候TLE,第二天发现合并方向合并错了~ 改了一下顺序就切了~ 又掉分了,好难过QAQ...... Code: #include <bits/stdc++.h> #define N ...

  3. 【原创】洛谷 LUOGU P3373 【模板】线段树2

    P3373 [模板]线段树 2 题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.将某区间每一个数乘上x 3.求出某区间每一个数的和 输入输出格式 输入格式: 第 ...

  4. 数学函数(C/C++)

    C中包含头文件<math.h> C++包含头文件<cmath> 函数 double cos(double) 该函数返回弧度角(double型)的余弦 double tan(do ...

  5. oracle数据库体系结构

    一.oracle数据库体系结构 基本组成: Oracle server:一般情况下是一个instance和一个database组成 一般:1个instance只能对应一个数据库. 特殊:1个数据库可以 ...

  6. 使用 kubeadm 安装 kubernetes v1.16.0

    近日通过kubeadm 安装 kubernetes v1.16.0,踩过不少坑,现记录下安装过程. 安装环境: 系           统:CentOS Linux release 7.6 Docke ...

  7. Java如何接收前端传来的多层嵌套的复杂json串

    想看问题直接解决方式,直接拉到博文底部. Spring的controller在接收前端传参的时候如果参数使用@RequestBody标注的时候 @RequestBody 则会把前端参数转为JSON的形 ...

  8. mybatis用Map<Long,List<String>>作为参数

    mapper.xml文件里的<insert id="insertByMap" parameterType="java.util.Map"> inse ...

  9. 在windows系统搭建Flutter开发环境

    开发环境搭建(Windows) 系统要求 设置FLutter镜像(非必须) 获取Flutter SDK Android开发环境设置 安装Flutter插件 系统要求 在Windows上要安装并运行Fl ...

  10. Java面试题整理(转载)

    转载地址:https://blog.csdn.net/matry521/article/details/52210139