• 阿铭每日一题 day 3 20180113


    day3=参考答案=~ps.不是唯一答案哦
     
    假设文本名字叫做1.txt,并且文本行数大于10,脚本如下
     1 #!/bin/bash
     2 
     3 ##先获取该文本的行数
     4 
     5 nu=`wc -l 1.txt |awk ‘{print $1}’`
     6 
     7 ##对前5行进程处理
     8 
     9 for i in `seq 1 5`
    10 
    11 do
    12 
    13 ##使用sed把每一行的内容赋值给变量
    14 
    15 l=`sed -n “$i”p 1.txt`
    16 
    17 ##用grep 判定是否匹配字母,-v取反,-q不输出内容
    18 
    19 if echo $l |grep -vq ‘[a-zA-Z]’
    20 
    21 then
    22 
    23 echo $l
    24 
    25 fi
    26 
    27 done
    28 
    29 ##对6-10行做删除字母处理
    30 
    31 for i in `seq 6 10`
    32 
    33 do
    34 
    35 l=`sed -n “$i”p 1.txt`
    36 
    37 echo $l|sed ‘s/[a-zA-Z]//g’
    38 
    39 done
    40 
    41 ##剩余的直接输出
    42 
    43 for i in `seq 11 $nu`
    44 
    45 do
    46 
    47 sed -n “$i”p 1.txt
    48 
    49 done
    ##若想把更改内容写入到1.txt,还需要把以上内容重定向到一个文本中,然后删除1.txt,再把刚刚重定向的文件更名为1.txt

  • 相关阅读:
    2017ICPC沈阳赛现场赛 L-Tree (dfs)
    2019西北工业大学程序设计创新实践基地春季选拔赛 D(卢卡斯定理)
    Codeforces Round #454 (Div. 1) CodeForces 906D Power Tower (欧拉降幂)
    模板
    洛谷
    模板
    洛谷
    洛谷
    模板
    模板
  • 原文地址:https://www.cnblogs.com/ivan-yang/p/8323530.html
Copyright © 2020-2023  润新知