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  "\t"   $3}'     //按默认的空格或tab分隔,打印第1和第3列

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

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

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

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

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


3、比较 diff


4、补丁pitch 















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值