知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

shell小脚本findinner搜索指定目录下文件

发布时间:2014-09-05 17:02:42作者:知识屋

#!/bin/sh
#################################################
#created by ydds                                #
#date 2010-05-17                                #
#function is findinner find string in file inner#
#################################################
[ $# -ne 2 ]&&echo "Usage: findinner /path string "&&exit 1
is_ignored_file() {
    case "$1" in
        *~ | *.tar | *.zip | *.gz | *.tar.gz| *.iso|*.rpm | *.gz| *.jpg| *.png|*.tar|*.zip|*.so)
            return 0
            ;;
    esac
    return 1
}
i=1
echo;printf "|--------------------contains $2 string files------------------|/n"
for file in $(ls $1)
do
        [ -d ${file} ]&&continue
        is_ignored_file ${file}&&[ $? -eq 0 ]&&continue
        num=$(sed -n "/$2/p" ${file}|wc -l)
        [ $num -ge 1 ]&&printf "|/t${i}.$(echo ${file}|awk -F "/" '{print $NF}')/n"&&((i++))
done
[ $i -eq 1 ]&&echo "no files contains $2"
printf "|--------------------contains $2 string files------------------|/n";echo
本文出自 “一灯” 博客

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜