find locate updatedb which whereis grep
语法
find [搜索范围] [匹配条件]
示例
find /etc -name init 精确查找init名称的文件 find /etc -name *init* 模糊匹配 find /etc -name init??? find /etc -iname init* 不区分大小写 find / -size +204800 查找大于100M的文件 - 少于 linux按数据块记录文件的大小,1个数据块为0.5KB find /home -user jeff 按所有者查找 find/home -group jeff 所属组 find /temp -amin -5 按文件的访问时间 -5 5min内 -cmin 属性修改 -mmin 内容修改 find /etc -name init* -a -type d -a 且连接多个条件 -o 或连接 -type 文件类型 f 文件 d 目录 l 链接 find /home -user jeff -ok rm {} \; 查询所有者jeff的文件,并执行删除操作 -ok 在执行前会询问用户 -exec 直接执行 {} \; 固定格式 [root@localhost tmp]# find /home -user jeff -ok rm {} \; < rm ... /home/jeff > ? n < rm ... /home/jeff/.bashrc > ? n < rm ... /home/jeff/.bash_logout > ? n < rm ... /home/jeff/.gnome2 > ? n < rm ... /home/jeff/.bash_profile > ? n find ./temp -inum 266092 -ok rm {} \; 按节点查找
locate
实现快速查找 locate 是根据linux的资料库快速查找,其中tmp目录下的文件不能用该命令查找, 并且对于新建的文件可能无法查找,需要更新资料库locate inittab 查找文件inittab updatedb 更新资料库
which
查找命令的所在位置whereis
同which 但它可以列出命令文档所在的位置grep
查找文件内容关键字的所在行grep multiuser /etc/inittab 列出文件inittab含有关键字multiuser的行 grep -i multiuser /etc/inittab 忽略大小写 grep -v ^# /etc/inittab 排除文件inittab中行首为注释字符#的行