Shell遍历文件,对每行进行正则匹配

Shell查看文件的最后5行,并对每行进行正则匹配,代码如下:

#!/bin/sh

pattern="HeartBeat"
tail -n 5 /home/test/log/log_20150205.log | while read line
do
    if [[ $line =~ $pattern ]]
    then
        echo "Match"
    else
        echo "No match"
    fi
    echo $line
done
时间: 2024-10-13 14:22:34

Shell遍历文件,对每行进行正则匹配的相关文章

shell遍历文件夹并执行命令

背景: 有一个源码包里面包含很多子目录和makefile,打包后的压缩包太大,需要将make生成的所有二进制文件删除然后再打包. 需求: 因此,要求在制定目录的所有递归子目录中执行make clean以清楚所有的目标文件. 代码: 写了一段简单的shell脚本,有两个功能: 1.遍历所有子目录,如果存在Makefile就执行make clean(当然也可以干更多的事): 2.列出所有子目录下大于10M(当然也可以指定其他值)的文件. 话不多说上代码: #!/bin/bash run_make()

Shell遍历文件的每一行

由于使用for来读入文件里的行时,会自动把空格和换行符作为一样分隔符,因为当行里有空格的时候,输出的结果会很乱,所以…… cat input.txt |while read line> do> echo $line> done 或者: while read line> do> echo $line> done < input.txt 再举个实际点的例子(把所有目录权限修改为755,所有文件为644): # find ./ -type f>filelist#

Shell遍历文件的每一行[转载]

1 #!/bin/sh 2 3 while read line 4 do 5 echo $line 6 done < /home/jms/lab/input.txt

遍历文件并格式化输出文件(shell脚本实现)

[背景] 1.项目开发中,急需要根据资源路径res下的文件,生成如下三种格式的文件. 格式一: #define IDR_CEF_0001 101 #define IDR_CEF_0002 102 ... #define IDR_CEF_0122 222 格式二: {"about.html", IDR_CEF_0001}, {"addProbe.html", IDR_CEF_0002}, - {"img/helpimg/help17.PNG", I

在VSCode中用正则匹配文件每行的开头

原文:在VSCode中用正则匹配文件每行的开头 在复制文件的时候经常把文件前面的行号什么的也给复制进来,就百度了下说用下面这个正则: (?:^|\n)\w+ 但是这个正则把上一行的结尾的换行也给匹配上了,如果替换为'',就会让所有代码成一行,所以在前面加了一个^开头,就可以使用了 ^(?:^|\n)\w+ 原文地址:https://www.cnblogs.com/lonelyxmas/p/12503469.html

shell读取文件行,列

cat ${FILE} | while read line do echo $line done ------------------------------------------- while read LINE  #每次读取aa.list中的一行 do echo $LINE     #输出每行的信息 done < ${FILE} ------------------------------------------- 读取文件的每行第一列和第二列 while read n m do echo

2015年8月27日课程作业(文件权限管理及grep正则和扩展正则表达式)-JY1506402-19+liuhui880818

学习内容:文件权限管理及grep正则和扩展正则表达式 系统环境:CentOS 6.7/7 x86_64 一.作业(练习)内容: 1.总结本此课程中所涉及命令的使用方法及相关示例展示: 2.总结基本正则表达式及扩展正则表达式 3.显示/etc/passwd文件中以bash结尾的行 4.显示/etc/passwd文件中的两位数或三位数 5.显示`netstat -tan`命令结果中以'LISTEN'后跟0个.1个或者多个空白字符结尾的行 6.添加用户bash.testbash.basher以及nol

Linux查找并删除重复文件的命令行fdupes工具,dupeGuru图形工具

查了几十个网页,找到这个接近满意的解决方案http://unix.stackexchange.com/questions/146197/fdupes-delete-files-aft... 不过正则里面的叹号好像不能起到清除空行的效果,改为d;fdupes --recurse A/ B/ | sed '/^A/d; /^$/d; s/.*/"&"/' | xargs rm 但还有个小问题,如果A里面有重复的文件,但这文件不在B中,fdupes也是会列为结果,导致误删,要再想想

python-删除文件的特定行

有一次需要删除一些html文件中的统计链接,通过用遍历文本的每行,然后正则查找网址,使用下面的函数删除行. 删除文本文件的特定行 def removeLine(filename, lineno): fro = open(filename, "r",encoding='UTF-8') current_line = 0 while current_line < lineno: fro.readline() current_line += 1 seekpoint = fro.tell(