Shell实例----------从文件夹里面多个文件里面查找指定内容

时间:2022-11-26 05:48:46


脚本执行方式:脚本名称  目录的路径 要查找的内容


#!/bin/bash num=`ls $1 |tr ' ' '^$'|wc -l` for i in `seq 1 $num` do file_name=`ls $1|tr ' ' '^$'|sed -n $i'p'` # echo $file_name # echo 查看 $1$file_name cat $1/$file_name|grep $2 2>/dev/null if [ $? -eq 0 ] then echo $file_name文件里有"$2" fi done

 ##根据实际情况自行修改脚本,像目录里面递归查找等等

#这个脚本存在BUG,无法递归查找,既如果要查找的目录下面有目录,就会报错

#解决方法,用递归思想

while [ -d  $file_name ] #如果是文件,就去里面,重复上一步,用的就是递归思想