shell awk含关键字的行,并对内容进行转换大写以及排序输出

本文介绍了如何在Linux环境中利用shell和awk命令来查找包含特定关键字(Sparklet或sparklet)的行,并将这些行的内容转换为大写,最后进行排序。操作中涉及到创建文件homework2,以及处理Readme.txt文件,通过cat -n命令实现筛选后的行号排序。
摘要由CSDN通过智能技术生成

1.新建一个文件,文件名为homework2,并输入下面内容

    其中varchar1、varchar2分别为两个关键词(区别在于S的大小写)

varnum是计算序号,Readme.txt为要操作的文件 (在文章最后给出)

##First Idea
varchar1="Sparklet"
varchar2="sparklet"
varnum=1
cat Readme.txt | while read line
 do
   if [[ ${line} =~ ${varchar1} || ${line} =~ ${varchar2} ]]
   then
    ##typeset -u ${line}
     echo "${varnum}.    ${line}" | tr 'a-z' 'A-Z'
     let varnum=varnum+1
   fi
 done

结果如图:


2.使用awk 达到以上效果,代码如下:

其中/Sparklet|sparklet/为关键字  cat -n对筛选出来的内容进行排序

##Second Idea
cat Readme.txt | awk '/Sparklet|sparklet/{print $0} ' | tr a-z A-Z | cat -n

结果如图:

<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值