• sed命令学习


    sed命令是轻量级流编辑器,主要用来将数据进行选取、替换、删除、新增的命令

    sed [选项]  ‘[动作]’  文件名

    选项:

    — -n: 一般sed命令会把所有数据都输出到屏幕上,如果假如此选择,则只会把经过sed命令处理的行输出到屏幕

    — -e:允许对输入的数据应用多条sed命令编辑

    — -i:用sed的修改结果直接修改读取数据的文件,而不是由屏幕输出。

    动作:

    — a:追加,在当前行后添加一行或多行

    — c:行替换,用c后面的字符串替换原数据行

    — i:插入,在当前行前插入一行或多行。

    — d:删除,删除指定的行

    — p:打印,输出指定的行

    —s :字符替换,用一个字符串替换另外一个字符串。格式为:“行范围s/旧字符串/新字符串/g” (和vim中的替换格式类似)(如果不加g,表示只对第一个有效,不管后面出现的)

    测试数据:

    1.打印第二行

    [root@myfuture ~]# sed '2p' student.txt 
    ID    Name    gender    Mark
    1    furong    F    85
    1    furong    F    85
    2    fengj    F    60    
    3    cang    F    70

    加入-n参数

    [root@myfuture ~]# sed -n '2p' student.txt 
    1    furong    F    85

    2.删除第二行:

    [root@myfuture ~]# sed '2d' student.txt
    ID    Name    gender    Mark
    2    fengj    F    60    
    3    cang    F    70

    3.删除第二行和第四行之间的内容

    [root@myfuture ~]# sed '2,4d' student.txt
    ID    Name    gender    Mark

    4.在第二行后追加数据

    [root@myfuture ~]# sed '2a piaoliang jiushi renxing'  student.txt
    ID    Name    gender    Mark
    1    furong    F    85
    piaoliang jiushi renxing
    2    fengj    F    60    
    3    cang    F    70

    第二行前添加数据

    [root@myfuture ~]# sed '2i meinv' student.txt
    ID    Name    gender    Mark
    meinv
    1    furong    F    85
    2    fengj    F    60    
    3    cang    F    70

    5.数据替换

    [root@myfuture ~]# sed '2c furong bu ji ge' student.txt
    ID    Name    gender    Mark
    furong bu ji ge
    2    fengj    F    60    
    3    cang    F    70

    第三行的60替换为90

    [root@myfuture ~]# sed '3s/60/99/g' student.txt
    ID    Name    gender    Mark
    1    furong    F    85
    2    fengj    F    99    
    3    cang    F    70

    将修改直接写入文件

    [root@myfuture ~]# sed -i '3s/60/99/g' student.txt
    [root@myfuture ~]# cat student.txt
    ID    Name    gender    Mark
    1    furong    F    85
    2    fengj    F    99    
    3    cang    F    70

    同时把fengj和cang替换为空,加入-e

  • 相关阅读:
    java mail
    hibernate 批量处理数据
    动态规划0—1背包问题
    FreeCMS开发过程问题总结(持续更新中)
    RapeLay(电车之狼R)的结局介绍 (隐藏结局攻略)
    笔记本键盘输入错乱,字母都变成数字了
    眼下最好的JSP分页技术
    在一个字符串中找到第一个仅仅出现一次的字符
    央行力保首套房贷背后暗藏何种玄机?
    HDU2149-Good Luck in CET-4 Everybody!(博弈,打表找规律)
  • 原文地址:https://www.cnblogs.com/XYJK1002/p/5330355.html
Copyright © 2020-2023  润新知