2011-07-25 64 views
1

我想查找包含一些有趣內容的文件。我希望該文件具有擴展名.h或.cc。有一些更快的方法比打字兩次:使用grep查找文件

grep -r "some stuff" * --include="*.h" 
grep -r "some stuff" * --include="*.cc" 

+1

我發現它; )grep -r「some stuff」* --include =「*。h」--include =「*。cc」 – Adi

回答

0

我在我的.bashrc定義的bash函數,其搜索在遞歸當前目錄但跳過已知不感興趣的文件和目錄:

function cgrep() { 
    egrep -nrI --color=auto --exclude="*.svn-base" --exclude=".svn" --exclude="entries" --exclude=".*.d" --exclude="cscope.out" --exclude="*.syms" --exclude="*.dis" --exclude="*.d" "[email protected]" . 
} 

通過調用它

> cgrep uint64_t 
./fs/nfsd/nfs4xdr.c:3016: uint64_t minor_id = 0; 
./fs/nfs/callback.h:67: uint64_t size; 
./fs/nfs/callback.h:68: uint64_t change_attr; 
./fs/nfs/fscache-index.c:188:      uint64_t *size) 

搜索到的圖案實際上是彩色的! :-)