zoukankan      html  css  js  c++  java
  • shell编程系列12--文本处理三剑客之sed利用sed修改文件内容

    shell编程系列12--文本处理三剑客之sed利用sed修改文件内容
    
    修改命令对照表
    
    编辑命令
    1s/old/new/                替换第1行内容old为new
    1,10s/old/new/                替换第1行到10行的内容old为new
    1,+5s/old/new/                替换1行到6行的内容old为new
    /pattern1/s/old/new/            替换匹配到pattern1的行内容old为new
    /pattern1/,/pattern2/s/old/new/        替换匹配到pattern1的行直到匹配到pattern2的所有行内容old为new
    /pattern1/,10s/old/new/            替换匹配到pattern1的行到10行的所有行内容old为new
    10,/pattern1/s/old/new/            替换第10行直到匹配到pattern1的所有行内容old为new
    
    
    修改用法总结:
        1、1s/old/new/
        25,10s/old/new/
        310,+10s/old/new/
        4、/pattern1/s/old/new/
        5、/pattern1/,/pattern2/s/old/new/
        6、/pattern1/,20s/old/new/
        715,/pattern1/s/old/new/
    
    练习例子:
        1、修改/etc/passwd中第1行第1个root为ROOT
            sed -i '1s/root/ROOT/' passwd
        2、修改/etc/passwd中第5行到第10行中所有的/sbin/nologin为/bin/bash
            sed -i '5,10s//sbin/nologin//bin/bash/g' passwd
        3、修改/etc/passwd中匹配到/sbin/nologin的行,将匹配到行中的login改为大写的LOGIN
            sed -i '//sbin/nologin/s/login/LOGIN/g' passwd
        4、修改/etc/passwd中从匹配到以root开头的行,到匹配到行中包含mail的所有行。修改匹配到的行中的bin修改为HADOOP
            sed -i '/^root/,/mail/s/bin/HADOOP/g' passwd
        5、修改/etc/passwd中从匹配到以root开头的行,到第15行中的所有行,修改内容为将这些行中的nologin为SPARK
            sed -i '/^root/,15s/nologin/SPARK/g' passwd 
        6、修改/etc/passwd中从第15行开始,到匹配到以post开头的所有行,修改这些行中的bin为BIN
            sed -i '15,/^post/s/bin/BIN/g' passwd
    
    # 删除文本中的所有数字
    [root@localhost shell]# cat file.txt 
    Hadoop Spark Flink 3435
    1002 Test string
    [root@localhost shell]# sed -i 's/[0-9]*//g' file.txt 
    [root@localhost shell]# cat file.txt 
    Hadoop Spark Flink 
     Test string
  • 相关阅读:
    Cocos2d-js 开发记录:图片数据资源等的异步加载
    Cocos2d-js 开发记录:声音播放
    Cocos2d-js 开发记录-初始
    PAT 1064 Complete Binary Search Tree
    python 对象属性与 getattr & setattr
    LeetCode Text Justification
    LeetCode Valid Number
    LeetCode String to Integer (atoi)
    struts2--标签取值
    java--Hibernate实现分页查询
  • 原文地址:https://www.cnblogs.com/reblue520/p/10976241.html
Copyright © 2011-2022 走看看