1、 locate:按照文件名搜索文件

locate filename

与find在整个操作系统中遍历搜索不同,locate命令在/var/lib/mlocate这个后台数据库中按照文件名搜索,所以优点是搜索速度很快。

然而由于数据库是一天更新一次,所以新建的文件很可能搜索不到,为了避免这个问题,可以强制更新数据库:updatedb

Locate的缺点是只能用文件名搜索,而且由于Locate的搜索是根据/etc/updatedb.conf文件中的规则进行搜索的,所以可能会存在某些文件或者某些文件夹或者符合某些规则的文件不会被搜索到的情况,具体参考前述文件中规定的规则(whereis和which也遵守这个规则)。

2、 whereis和which:搜索命令的命令

whereis [options] name

whereis只能搜索系统命令,不能搜索我们自主创建的文件,比如搜索 ls,touch等系统命令所在位置

–b 只查找可执行文件

-m 只查找帮助文件

有的命令是找不到命令所在位置的,比如cd,这是shell命令,用whereis和which是找不到的。

Which除了能找到命令所在位置外,还能查到命令的别名,但是不是每个命令都有别名,所以有的就只能看到命令所在位置

3、 find:非常强大,参数多

find [搜索范围] [搜索条件]

e.g:     find / -name filename 搜索范围为根目录,按照name搜索文件filename

find搜索应该避免大范围搜索浪费资源,而且find是全匹配搜索,只有文件名完全一样才会被搜到,如果想搜索带有关键字的,那需要通配符。Linux中的通配符有?  []

常用搜索条件有:

-name 按照名字搜索

-iname 不区分大小写

-user  按照所有者搜索(后接所有者名称)

-nouser 搜索没有所有者的,一般而言没有所有者的文件是垃圾文件可以删除,但是除了

a .sys文件夹和proc文件夹中的无用户文件,这两个文件中的无用户文件是内核直接产生的

b.外来文件,比如U盘移动硬盘等的文件

-mtime,atime,ctime

find /root –mtime +10

-10: 10天内修改文件

10:10天当天修改文件

+10:10天前修改的文件

atime:文件访问时间

ctime:改变文件属性

mtime:修改文件内容

-size 按照文件大小搜索

Find / -size +25k,千字节必须是小写k,兆字节必须大写M,不带单位则单位为扇区数

-25k 小于25k

25k  等于25k

+25k  大于25k

-inum 按照inode搜索

  组合搜索:

-a 逻辑与  find /etc –size +20k –a –size -30k

-o 逻辑或 用法与-a相同

-exec 接在find搜索命令之后表示find的结果送给exec后面的命令执行。比如:

Find /root –size 20k  -exec rm –rf {}\; 在root中找到大小为20k的文件并删除

此时第二个命令后面必须要有{}\;

4、 grep:搜索字符串命令,在指定文件中搜索指定字符串

grep “size” filename在filename中查找包含“size”的语句

grep –v “size” filename 取反,不包含“size”的语句

linux下文件搜索命令学习笔记的更多相关文章

  1. Linux下文件查找命令find笔记

    在Linux命令下如果需要快速自己系统所需要处理的文件,可以通过find命令快速进行检索. 如果想在某个路径下查找相应的文件可以执行如下命令: find path -name filename # p ...

  2. Linux下文件搜索、查找、查看命令

    Linux下文件搜索.查找.查看命令 1.最强大的搜索命令:find 查找各种文件的命令 2.在文件资料中查找文件:locate 3.搜索命令所在的目录及别名信息:which 4.搜索命令所在的目录及 ...

  3. 4.Linux的文件搜索命令

    1.文件搜索命令  which 语法:which [命令名称] 范例:$which ls  列出ls命令所在目录 [chanshuyi@localhost ~]$ which ls alias ls= ...

  4. [Linux] 012 文件搜索命令

    文件搜索命令:find 命令名称:find 命令所在路径:/bin/find 执行权限:所有用户 语法:find [搜索范围] [匹配条件] 功能描述:文件搜索 范例: 在目录 /etc 中查找文件 ...

  5. Linux的文件搜索命令(locate ,find,grep,find命令和)

    刚开始学Linux,这是关于Linux文件搜索命令,就目前,尽我所能把他写全一点,后期随时补充 文件搜索命令 一.locate命令 二.find命令 三.grep命令 四.find命令和grep命令的 ...

  6. Linux基本命令 文件搜索命令

    1.文件搜索命令find ================================================================================== 命令名称 ...

  7. Linux 之 文件搜索命令

    文件搜索命令 参考教程:[千峰教育] 文件搜索定位 grep: 作用:通用规则表达式分析程序,是一种强大的文本搜索工具, 它能使用正则表达式搜索文本,并把匹配的行打印出来. 格式:grep [选项] ...

  8. Linux下的strip命令学习

    strip strip是Linux下的一个命令.可以用于给应用脱衣服,帮助我们抹除一些调试信息.(虽然不知道具体是什么,但是会用就好了) 在嵌入式开发领域用到的应该比较多 首先,先写一个示例看看 // ...

  9. linux下的IO模型---学习笔记

    1.linux文件系统和缓存 文件系统接口 文件系统-一种把数据组织成文件和目录的存储方式,提供了基于文件的存取接口,并通过文件权限控制访问. 存储层次 文件系统缓存 主存(通常时DRAM)的一块区域 ...

随机推荐

  1. Intent之复杂数据的传递

    想在两个Activity之间传递一个对象Result,在网上差了很多,都需要序列化或者时下Paracelable,等等,试了很多都不行. 后来才制单,这个Result,根本不需要集成Sereriabl ...

  2. python IOError: [Errno 0] Error

    Windows系统下,此异常在以'a+'模式打开文件,读文件,再写入过程中出现.其原因在于读写交替过程中必须要有fflush, fseek, fsetpos, rewind这类操作,不然python就 ...

  3. Nginx负载均衡

    负载均衡(做分发服器)1.基于浏览器的分发基于浏览器的分发,按照在不同平台的浏览器请求进行分发,比如手机浏览器讲究资源小速度快节省流量,所以将自手机浏览器的请求分发到专供处理移动平台的web服务器上, ...

  4. HTML5编码规范

    为每个 HTML 页面的第一行添加标准模式(standard mode)的声明,这样能够确保在每个浏览器中拥有一致的展现. 用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展 ...

  5. java返回一个简单的日历

    import java.text.*; //首先得导包 import java.util.*; public class hw2 { /** * 计算日期差 返回的天数 * @param dstr1 ...

  6. git学习(三):版本控制

    查看每次修改日志 git log 会显示每次修改的日期和相应提交的commit 版本控制 git reset --hard <版本id> 这里的id可以是HEAD^(上一个) HEAD^^ ...

  7. react native TextInput

    今天我想说一下react native中的一个控件,TextInput 翻译过来就是文本输入,对应着android中的EditText.我们先看一下官方是怎样描述的.TextInput是一个允许用户在 ...

  8. Codeforces Round #254 (Div. 2) A DZY Loves Chessboard

    先生成nXm的BW棋盘 BWBWBWBW WBWBWBWB BWBWBWBW WBWBWBWB 类似上面交替变换 然后将输入为’-’的地方替换成‘-’即可 #include <iostream& ...

  9. 【DP】HDU 1176

    HDU 1176 免费馅饼 题意:中文题目不解释. 思路:因为是从中间出发所以思路卡了许久,还在之前做了道HIHO入门的题.能想到的点,从时间思考,然后初始化1s的时候,4,5,6,的数值要特别赋值. ...

  10. MVC入口程序 | 简单调用及实例化

    入口程序: 现在大多采用单一入口机制,单一入口就是指在一个web应用程序中,所有的请求都指向一个脚本文件.通俗点说就是一幢大楼只有一个大门入口可以进去... 目录: 建立一个控制器/模型/视图调用函数 ...