zoukankan      html  css  js  c++  java
  • Shell文本处理 (4) sed、awk、diff、patch、

    1、行操作 sed

    cat  txt | sed  '2d‘      // 删除第2行

    cat  txt | sed  '2,5d’      // 删除第2-5行'

    cat  txt | sed  '2,$d‘      // 删除第2到最后1行

    cat  txt | sed  '2a   hhhhhhh'      // 第2后加上一行hhhhhhh

    cat  txt | sed  '2i   hhhhhhh'      // 第2前加上一行hhhhhhh

    cat  txt | sed  '2,5c   hhhhhhh'      // 第2-5 替换为hhhhhhh

    cat  txt | sed  -n  '2,5p'      // 取出第2-5 行

    cat  txt | sed  -s   's/aaa/bbb/g'    // aaa替换为bbb,其中aaa可以是正则表达式

    cat  txt | sed  -s   's/#.*$//g'    // 删除批注

    cat  txt | sed  -s   's/*$//g'    // 删除空白行


    2、行分段操作 awk

    last | awk '{   print  $1  " "   $3}'     //按默认的空格或tab分隔,打印第1和第3列

    last | awk '{   print  $1  "   line No.: " NR  “  column No.: ”   NF }'     ///按默认的空格或tab分隔,打印第1列,打印行号NR,行字段总数NF

    last | awk ' BEGIN  {FS=“;”}     {   print  $1  " "   $3}'     //按分号; 分隔,打印第1和第3列

    last | awk ' BEGIN  {FS=“;”}   $3>10  {   print  $1  " "   $3}'     //按分号; 分隔,若第3列大于10,打印第1和第3列

    cat pay.txt | awk '    (NR==1)  {  printf  “%10s  %10s  %10s  %10s  %10s    ”, $1,  $2, $3, $4, "Total"  }

      (NR>=2)  {  total=$2+$3+ $4   printf  “%10s  %10s  %10s  %10s  %10s     ”, $1,  $2, $3, $4, total  }  '       // 第一行表头,从第二行开始统计


    3、比较 diff


    4、补丁pitch 















  • 相关阅读:
    2018 ACM 网络选拔赛 徐州赛区
    2018 ACM 网络选拔赛 焦作赛区
    2018 ACM 网络选拔赛 沈阳赛区
    poj 2289 网络流 and 二分查找
    poj 2446 二分图最大匹配
    poj 1469 二分图最大匹配
    poj 3249 拓扑排序 and 动态规划
    poj 3687 拓扑排序
    poj 2585 拓扑排序
    poj 1094 拓扑排序
  • 原文地址:https://www.cnblogs.com/leeeee/p/7276147.html
Copyright © 2011-2022 走看看