zoukankan      html  css  js  c++  java
  • Linux三剑客-sed

      sed 流编辑器(行编辑器,对行进行操作),默认只对缓冲区原始文件得副本编辑,不编辑源文件,sed把当前处理得行存储在临时缓冲区中,称为“模式空间”,sed处理其中得内容,处理后把缓冲区得内容显示,接着处理下一行,直到文件末尾。

    -n 显示处理过得行    
        sed -n '2,3p' passwd.txt 只处理文件得2,3行(其中p表示显示行,处理完后打印)
    
    -i    直接修改源文件(一般不推荐)
        
    -r    扩展正则表达式
    
    匹配只包含admin的行
        sed -n '/admin/p' passwd.txt
    
    匹配最后一行
        sed -n '$p' passwd.txt
    
    不匹配1,20行
        sed -n '1,20!p' passwd.txt
    
    从匹配admin的行到最后一行
        sed -n '/admin/, $p' passwd.txt
    
    在admin的后面添加username
        sed '/admin/a username' passwd.txt
    
    在admin的前面插入username
        sed '/admin/iusername' passwd.txt
    
    删除第一行
        sed '1d' passwd.txt 
    
    替换匹配到的第一个admin为root
        sed -n 's/admin/root/p' passwd.txt
    
    替换所有的admin为root(g表示全局)
        sed -n 's/admin/root/pg' passwd.txt
    
    替换admin为root后写入到username.txt中
        sed -n 's/admin/root/w username.txt' passwd.txt
    
    将passwd.txt 1-5行写入username.txt
        sed -n '1,5w username.txt' passwd.txt
    
    将passwd.txt 中的字母abc替换成ABC
        sed 'y/abc/ABC/' passwd.txt
    
    将passwd.txt 的admin替换为Admin(1表示()中匹配到的第一组数据)
        sed 's/a(dmin)/A1/g' passwd.txt 
    
    删除文件中行首的空白符
        history | sed 's/^[[:space:]]//g'
    
    获取文件路径的父目录
        pwd | sed 's/^/*//g' | cut -d '/' -f1        
    
    修改grep匹配到的文件中python为python2(其中#类似/表示分隔符,也可以是任何字符)
        sed -i "s#/usr/bin/python#/usr/bin/python2#g" `grep /usr/bin/python -rl /usr/bin/*`
        
  • 相关阅读:
    XML和解析
    代理模式
    net-snmp配置文件snmp.conf
    tomcat-在eclispe中配置远程调试
    tomcat-在eclipse中配置tomcat容器的内存
    web项目跨域访问
    STS-创建spring配置文件
    STS-新建mvc工程--helloworld
    STS-新建spring mvc项目
    Eclipse-安装Spring Tool Suit 插件
  • 原文地址:https://www.cnblogs.com/imlifelong/p/11503630.html
Copyright © 2011-2022 走看看