zoukankan      html  css  js  c++  java
  • sed的使用

    sed只是对缓冲区中原始文件的副本进行编辑,并不是编辑原始文件。因此,如果想要保存改动内容,需要将输出重定向到另外一个文件
     调用sed的三种方式,一种为Shell命令行方式,另外两种是将sed命令写入脚本文件,然后执行该脚本文件
    
    sed [选项] sed的命令 输出文件    
    sed [选项] -f     sed脚本文件C 输出文件
    sed命令选项及其意义
    -n #不打印所有行到标准输出
    -e #表示将下一个字符串解析为sed编辑命令,如果只传递一个编辑命令给sed,-e选项可以省略
    -f #表示正在调用的sed脚本文件

    sed编辑命令

    p #打印匹配行
    = #打印文件行号
    a #在定位行号之后追加文件信息
    i #在定位行号之前出入文本信息
    d #删除定位行
    c #用新文本替换定位文本
    s #使用替换模式替换相应模式
    r #从另外本件中读文本
    w #将文本写入一个文件
    y #变换字符
    q #第一个模式匹配完成后退出
    {} #在定位执行的命令组
    n #读取下一个输出行,用下一个命令处理新的行
    h #将模式缓存区的文本复制到保持缓冲区
    H #将模式缓冲区的文本追加到保持缓冲区

    sed的一些常用操作

    '/.$/d'   #删除以句点结尾的行
    '/abcd/d'   #删除包含abcd的行
    's/[][][]*/[]/g'    #用一个空格替换掉两个以上的空格
    's/^[][]*//g'   #将行首空格替换成空.即删除行首空格
    's/.[][]*/[]/g'    #删除句点后跟两个空格或更多的空格,并以一个空格替代
    '/^$/d'    #删除空行
    '1d'    #删除第一行
    '$d'   #删除第一行
    's/_*//g'   #删除横线----
    's/^.//g'   #删除第一个字符
    's/^.///g'     #从路径中删除第一个/
    's/[]/[ ]/g'    #删除所有的空格,并用tab键替代
    's/^[ ]//g'     #删除行首所有的tab键
  • 相关阅读:
    Ubuntu 14.04的SWAP 为0
    堆和栈的区别(转过无数次的文章)
    加法乘法判断溢出(转)
    大端格式、小端格式(转)
    Linux 目录操作和4中文件拷贝效率测试
    Linux使用标准IO的调用函数,分3种形式实现
    支持 onload 事件的元素
    $().each() 和 $.each()
    npm install --save 与 npm install --save-dev 的区别
    <!DOCTYPE html>作用
  • 原文地址:https://www.cnblogs.com/sujc-blogs/p/9722513.html
Copyright © 2011-2022 走看看