发新话题
打印

支持多次grep的 mgrep函数

支持多次grep的 mgrep函数

用过grep的同学几乎都会遇见需要多次grep的情况


ps -ef | grep ssh | grep -v grep
grep -v '#' < file | grep xxx | grep yyy

于是写了个小函数实现多次grep
原理很简单, 递归grep即可
大家伙看看有没更好的办法
复制内容到剪贴板
代码:
## to grep multipul times, supposed to be used after a pipe or with read redirection
## Example:  ps -ef | mgrep -v grep xxx;        mgrep  xxx yyy zzz < your_file
mgrep()
{
    local key="$1"
    local opt=

    if [[ -z "$key" ]]; then
        cat     
        return  
    fi

    while [[ ${key:0:1} == '-' ]]; do
        opt="$opt $key"
        shift   
        key="$1"
    done   

    shift   
    grep $opt $key | mgrep $@
}
期望支持grep本身的各种选项, 但没好好实现

[ 本帖最后由 li-jiahuan 于 2008-2-8 20:31 编辑 ]      
面包会有的 女人也会有的
_______________________

TOP

可以再完善一下哈       
'
◆ 发帖时请【突出主题】, 以便您的问题能够及时得到回复
◆ 发帖时请将您的【代码】或者【脚本】写在 [code] 和 [/code] 中间

TOP

权当抛砖引玉
等各看大佬出手      
面包会有的 女人也会有的
_______________________

TOP

发新话题