文件查找命令


查找命令:localfind

local:非实时查找,通过系统数据库进行搜索,无法查找到在系统数据库更新后创建的文件,但是查找速度快,模糊查找(不仅会查找到文件名还会找到文件全路径)

find:在硬盘上进行实时搜索,速度较慢,但是可以找到当前所有的数据

系统数据库在   /var/lib/mlocate/mlocate.db

系统一般会定时更新数据库,通过updatedb可以手动更新数据库

locate

-i:区分大小写

-r:支持正则表达式

-n#:只查找前#

find [选项][路径][条件][处理动作](在写路径时目录后要加/

条件:

-name#:查找名称为#的文件(支持正则表达式)

-inum#:查找inode#的文件

-samefile#:查找与#节点号相同的文件

-links#:查找链接数为#的文件

-regex#:查找以#匹配的整个文件路径的字符串而不只是文件

-user#:查找属主为#的文件

-group#:查找属组为#的文件

-uid#:查找uid#的文件

-gid#:查找gid#的文件

-nouser#:查找没有属主的文件

-nogroup#:查找没有的文件

-type:   f:普通文件  d:目录  l:链接文件  s:套接字文件  c:字符设备文件  b:块设备文件  p:管道文件

与:-a   或:-o  非:-not

德摩根定律:

非(PQ=(非P)或(非Q

非(PQ=(非P)且(非Q

命令中包含*一般要加“”

-size#+#-#):根据文件大小查找

#:(#-1#]

-#:[0,#-1]

+#(#,正无穷)

-atime#+#-#):根据文件访问查找(以天为单位)

#[##+1

-#:[0,#]

+#[#+1,正无穷)

-mtime#+#-#):根据文件修改查找

-ctime#+#-#):根据文件元数据修改时间查找

-amin-mmin-cmin:以分钟为单位

-perm#/#-#):根据权限查找

#:精确匹配权限

/#:再给出的非空权限为上,至少有一位能匹配上,0表示不关注

-#:给出的非空权限位必须全部匹配上,0表示不关注

处理动作

-print:打印

-ls:显示文件详细信息(有些情况下加-ls会造成查找结果异常)

-delete:删除文件

-fls #:把找到文件信息保存到#

-ok 命令 {} \;:对找到的文件执行命令(执行前进行交互式询问)

例子:-ok cp{} {}.bak \

{}代表找到的文件名称,{}\之间要有空格,\与;之间不能有空格,命令不支持别名

-execok用法相同只是执行命令前不询问

有些命令不能接受过多参数,此时命令执行可能会失败,采用下面方式可规避此问题  find | xargs COMMAND

原创文章,作者:zzzzz1357x1,如若转载,请注明出处:http://www.178linux.com/36234

(0)
zzzzz1357x1zzzzz1357x1
上一篇 2016-08-16
下一篇 2016-08-16

相关推荐

  • python 多版本管理(pyenv)

    01 – Python 简介和安装 01 – Python 简介和安装 1. Python 简介 2. 安装 pyenv 3. pyenv 使用 4. pyenv-virtualenv 5. 安装 IPython 和 Jupyter 01 – Python 简介和安装 1. Python 简介 编程风格 面向过程:以指令为…

    Linux干货 2016-07-10
  • 13 文件查找与压缩

    locate find 压缩命令 file-roller、compress/uncompress(.Z)、gzip/gunzip(.gz)、bzip2/bunzip2(.bz2)、xz/unxz(.xz) zip/unzip、tar locate 数据源 1)查询系统上预建的文件索引数据库      2)依赖于事先构建…

    Linux干货 2016-08-18
  • 权限管理和文本过滤

    1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限 [root@study ~]# cp -r /etc/skel/ /home/tuser1|chmod -R 700 tuser1/ [root@…

    Linux干货 2016-11-20
  • Linux终端类型

      2016-10-16  19:29:36  Linux终端类型   基本概念:  Linux终端其实就是用户与操作系统之间的一个接口,用户通过终端与操作系统进行交互。 在Linux系统终端包括以下几种: 1、控制台终端(Terminal)它的文件路径(/dev/console) (物理终端直接连接键盘和鼠…

    Linux干货 2016-10-17
  • 用户和组管理类命令详解

    用户和组管理类命令详解 组管理 groupadd 功能描述:创建一个新组 命令格式: groupadd [选项] GROUP 选项: -g GID 表示指定GID,默认情况下使用的是最小的未使用过的GID -r 表示创建一个系统组 groupmod 功能描述:修改组属性 命令格式:groupmod [选项] GROUP 选项: -g GID 表示修改GID …

    Linux干货 2017-07-16
  • Linux 别名与二进制的使用。

    二进制 一般二进制这个名词听上去高深莫测,然而当你了解它之后其实并不复杂,在计算机里处理数据一般都是由二进制处理。 平时我们计数都是以10为进制,比如平时数数:1、2、3、4、5、6、7、8、9,数到10时就会导致个位变成0,十位变成了1,因为9+1要向十位进一,十进制意味着数字的每一位最小为0,最大为9。同理,二进制意味着数字的每一位最小为0,最大为1,十…

    Linux干货 2017-05-20

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-19 09:25

    对find命令的常见用法总结的很好,可以有一些示例,让自己的文章看起来更丰满一些,find在面试题中经常会出现,所以希望下来自己能好好的联系,熟练掌握。