|
发表于 2006-3-16 20:45:59
|
显示全部楼层
find . -name "main.c" 可以从当前目录下寻找 main.c 文件, 包括子目录. 通配符也是支持的
locate main.c 则是寻找系统中所有的文件名及路径名中包含 main.c 的文件, 前提是这些路径已经通过 updatedb 缓存过了. 如果想更准确的定位, 再用 grep 过滤一下就好了. locate 非常快, 但是它的寻找比较弱智, 假如你要找一个叫 abc 的文件, 那么假如你的系统中一个文件夹也叫 abc, 不但这些都会作为结果输出, 甚至连 abc 下所有的文件都会输出(因为目录名匹配嘛)
虽然楼主没有问, 但我想 grep 命令也是楼主想要知道的.
grep 命令用来过滤文件, 它的典型用法(或者称为我常用的方法^_^)有如下两种
ls | fgrep abc
fgrep -r "stdio.h" *
(fgrep 是 grep 不支持正则表达式的版本, 可能会快一些)
前者只加一个待查找的样式, 后者则在当前目录下递归搜索所有内容含有stdio.h的文件.对于程序员来说,这样的功能应该是比较有用的. |
|