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结果如图:

3.Readme.txt的文件内容如下(注意:以上所有操作均在同一目录下)
1. SFTP SparkletStage.tar.gz into path
/home/etlbat/SparkletStage.tar.gz
2. Enter into the path where tar file locates via user "etlbat"
cd /home/etlbat
3. Unzip the tar file
tar zxvf SparkletStage.tar.gz
4. Check if the folder appear or not
ls /home/etlbat
list result should be something like below:
[etlbat@BI/home/etlbat$]ll
total 39848
drwxrwxr-x. 22 etlbat etlbat 4096 Apr 3 08:38 alluxio
drwxrwxr-x 2 etlbat etlbat 4096 Apr 3 11:26 Font-smartbi
drwxrwxr-x. 8 etlbat etlbat 4096 Apr 3 08:39 hive
drwxrwxr-x 2 etlbat etlbat 4096 Apr 4 03:28 Index-smartbi
drwxrwxr-x. 3 etlbat etlbat 4096 Apr 10 01:59 nfs
-rw-rw-r-- 1 etlbat etlbat 559 Apr 5 00:21 readme.txt
-rwxrwxr-x 1 etlbat etlbat 248 Apr 3 14:20 restart_smartbi.sh
drwxrwxr-x. 9 etlbat etlbat 4096 Apr 3 08:40 scala
-rw-rw-r-- 1 etlbat etlbat 1990 Apr 3 10:46 smartbi-config.xml
-rw-rw-r-- 1 etlbat etlbat 18821 Apr 3 11:25 Smartbi-License.xml
-rw-rw-r-- 1 etlbat etlbat 1064801 Apr 4 03:31 smartbi.log
-rw-rw-r-- 1 etlbat etlbat 202 Apr 3 11:27 smartbi.properties
drwxrwxr-x. 38 etlbat etlbat 4096 Apr 3 08:42 spark
drwxrwxr-x 8 etlbat etlbat 4096 Apr 10 07:52 SparkletStage <<<<<<<<<=======================================
-rw-rw-r-- 1 etlbat etlbat 39658072 Apr 10 07:54 SparkletStage.tar.gz
-rwxrwxr-x 1 etlbat etlbat 757 Apr 3 14:28 startup.me
drwxr-xr-x 9 etlbat etlbat 4096 Apr 3 10:44 tomcat-smartbi
本文介绍了如何在Linux环境中利用shell和awk命令来查找包含特定关键字(Sparklet或sparklet)的行,并将这些行的内容转换为大写,最后进行排序。操作中涉及到创建文件homework2,以及处理Readme.txt文件,通过cat -n命令实现筛选后的行号排序。


被折叠的 条评论
为什么被折叠?



