find
find -name "*.java" | xargs grep "Event_EthConnectMode"
选项
-type,指定搜索的类型。以下是type可指定的参数:
-
b,块设备;
-
d,目录;
-
c,字符;
-
p,管道;
-
l,符号链接;
-
f,普通文件。
-name,指定文件名称,如*.java指所有的java文件
grep,指定过滤条件。
xargs,查询含有此字段的文件。
locate
locate(locate) 命令用来查找文件或目录。
locate命令要比find -name快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/mlocate/mlocate.db 。
locate [OPTION] [PATTERN]
选项
-b, --basename 只匹配路径名的名称
-c, --count 只输出找到的数量
-d, --database DBPATH 使用DBPATH指定的数据库,而不是默认数据库 /var/lib/mlocate/mlocate.db
-e, --existing 仅打印当前现有文件的条目
-L, --follow 检查文件是否存在(默认)时遵循尾随符号链接
-h, --help 显示帮助
-i, --ignore-case 忽略大小写
-l, --limit, -n LIMIT 限制输出(或计数)以限制条目
-m, --mmap 忽略,以便向后兼容
-P, --nofollow, -H 检查文件是否存在时,不要跟随后面的符号链接
-0, --null 输出上带有NUL的单独条目
-S, --statistics 不搜索条目,打印每个数据库的统计信息
-q, --quiet 安静模式,不会显示任何错误讯息
-r, --regexp REGEXP 使用基本正则表达式
--regex 使用扩展正则表达式
-s, --stdio 忽略,以便向后兼容
-V, --version 显示版本信息
-w, --wholename 匹配整个路径名(默认)
示例
# 搜索当前目录下所有的KKSdTr069_formal_signed.apk
locate ./ KKSdTr069_formal_signed.apk
whereis
whereis命令只能用于程序名的搜索。
选项
-b,搜索二进制文件;
-m,man说明文件;
-s,源代码文件;
如果省略参数,则返回所有信息。
whereis [file]