Chinaunix首页 | 论坛 | 博客
  • 博客访问: 225076
  • 博文数量: 30
  • 博客积分: 509
  • 博客等级: 一等列兵
  • 技术积分: 802
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-22 12:32
文章分类

全部博文(30)

文章存档

2013年(14)

2012年(16)

分类:

2012-12-31 11:00:42

    search脚本是集成find的文件查找及grep的文本搜索的功能。换言之,就是搜索指定文件中匹配的文本内容。由于find命名仅限于文件查找,而grep命令只能搜索指定文件的文本,但是在实际操作中往往需要在未知的文件中搜索指定的文本内容。由此,find和grep的爱情结晶search便孕育而生了。
    闲话少说,直接附上脚本供大家使用,希望能给大家的日常工作提供些方便。
#!/bin/ksh
#
# FILE: search
# DESC: 查找指定字符串
#
# ORIG: Renzo.Liu
# DATE: 2010.05.19
#
#


usage()
{
        echo
        echo "Usage: search [-d 目录][-f 文件][-i][-w] <字符串>"
        echo " -d: 指定搜索路径 <默认当前目录>"
        echo " -f: 指定文件名 <默认\"*.c\">"
        echo " -i: 忽略大小写"
        echo " -w: 匹配单词"
        echo
        exit
}


# 默认路径
DOPTION="."

# 默认文件
FOPTION="*.c"

while getopts d:f:iw OPTION
do
        case ${OPTION} in
        d) DOPTION=${OPTARG} ;;
        f) FOPTION=${OPTARG} ;;
        i) IOPTION="-i" ;;
        w) WOPTION="-w" ;;
        ?) usage ;;
        esac
done >/dev/null 2>&1

shift $(($OPTIND -1))

if [ -z "$1" ]; then
        usage
fi

eval "find ${DOPTION} -name '${FOPTION}' | xargs grep ${IOPTION} ${WOPTION} '$1'" 2>/dev/null

# End of search
阅读(1060) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~