zoukankan      html  css  js  c++  java
  • sed

    sed
    功能说明:sed是操作、过滤和转换文本内容的强大工具。常用功能包括对文件实现快速增删改查(增加、删除、修改、查询),其中查询的功能中最差用的两大功能是过滤指定字符串、取出指定行。
     
    参数选项:
    -n  取消默认的sed的输出,常与sed内置命令的p连用。
    -i  直接修改文件内容,而不是输出到终端。如果不适用 -i 选项,则sed只是修改内存中的数据,并不会影响磁盘上的文件。
     
    sed的内置命令字符
    a    全拼append,表示追加文本,在指定行后添加一行或多行文本。
    d    全拼delete,表示匹配行的文本。
    i    全拼insert,表示插入文本,在指定行前添加一行或多行文本。
    p    全拼print,表示打印匹配行的内容,通常p会与选项-n一起使用。
    s/regexp/replacement/    匹配regexp的内容,用replacement替换regexp匹配的内容,
    regexp部分可以使用正则表达式,在replacement部分可以使用特殊字符 & 和 1-9 等匹配regexp部分的部分内容。
    s/regexp/replacement/ 结尾常与g匹配做全局的替换。 在文件制定位置行后追加文件 [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# sed '2a 106,tianjing,TJ' a.log 101,shanghai,SH 102,beijing,BJ 106,tianjing,TJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ 在文件指定的行前插入文件 [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# sed '2i 106,tianjing,TJ' a.log 101,shanghai,SH 106,tianjing,TJ 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ 在指定行后最近多行文本 [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# sed '2a 106,tianjing,TJ 107,nanjing,NJ' a.log 101,shanghai,SH 102,beijing,BJ 106,tianjing,TJ 107,nanjing,NJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ 删除文件中一行指定的文本 [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# sed '2d' a.log 101,shanghai,SH 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ 删除文件中指定的多行文本 [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# sed '2,5d' a.log 101,shanghai,SH [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ 使用sed命令替换文本内容 [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# sed 's#beijing#liuzhou#g' a.log 101,shanghai,SH 102,liuzhou,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ 打印输出文件的指定行的内容 [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# sed '2p' a.log 101,shanghai,SH 102,beijing,BJ 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ [root@testdb ~]# sed -n '2p' a.log 102,beijing,BJ [root@testdb ~]# sed -n '2,3p' a.log 102,beijing,BJ 103,guangzhou,GZ [root@testdb ~]# cat a.log 101,shanghai,SH 102,beijing,BJ 103,guangzhou,GZ 104,shenzhen,SZ 105,hangzhou,HZ




  • 相关阅读:
    tyvj 1031 热浪 最短路
    【bzoj2005】 [Noi2010]能量采集 数学结论(gcd)
    hdu 1394 Minimum Inversion Number 逆序数/树状数组
    HDU 1698 just a hook 线段树,区间定值,求和
    ZeptoLab Code Rush 2015 C. Om Nom and Candies 暴力
    ZeptoLab Code Rush 2015 B. Om Nom and Dark Park DFS
    ZeptoLab Code Rush 2015 A. King of Thieves 暴力
    hdoj 5199 Gunner map
    hdoj 5198 Strange Class 水题
    vijos 1659 河蟹王国 线段树区间加、区间查询最大值
  • 原文地址:https://www.cnblogs.com/l10n/p/9416634.html
Copyright © 2011-2022 走看看