linux的find指令详解。

引用:http://os.51cto.com/art/200908/141411.htm

http://www.oschina.net/translate/15-practical-linux-find-command-examples

http://www.oschina.net/translate/15-practical-unix-linux-find-command-examples-part-2

find指令是用来搜索文件的指令。英文较好的同学可以直接看man find。

建议在本文找到对应指令后,查找man find 去阅读详细解释。

基本使用方式:

1)现在某个目录下的所有目录和文件(不推荐此方式)

find /  //  现在根目录下所有子目录和文件

2)在某个目录下查找具体文件:find <serach dirtection> -name <file name>

find / -name <file name>  // 在根目录【/】下搜索文件。
find / -iname <file name>  // 在根目录【/】下搜索文件。并且忽略大小写。

find /usr -name <file name>  // 在usr目录下搜索文件

3)无错查找:即不提示查找错误。

  1,例如:当使用普通用户时,查找根目录会出现很多permission denied(其他用户文件无法访问)

find / -name access_log 2>/dev/null  //将标准错误输出到null中。即不显示在命令行中。也可以索引到需要的文件里。

4)模糊查找:使用正则表达式进行模糊查找。

find /etc -name ‘*srm*‘

5)通过文件特征查找的指令:

-amin n       查找系统中最后N分钟访问的文件

-atime n      查找系统中最后n*24小时访问的文件

-cmin n       查找系统中最后N分钟被改变状态的文件

-ctime n      查找系统中最后n*24小时被改变状态的文件

-empty        查找系统中空白的文件,或空白的文件目录,或目录中没有子目录的文件夹

-false        查找系统中总是错误的文件

-fstype type  查找系统中存在于指定文件系统的文件,例如:ext2 .

-gid n        查找系统中文件数字组 ID 为 n的文件

-group gname  查找系统中文件属于gnam文件组,并且指定组和ID的文件 

-perm         根据权限进行查找。

-type         根据文件类型进行查找

6)控制查找的一些选项。

-daystart           测试系统从今天开始24小时以内的文件,用法类似-amin

-depth              使用深度级别的查找过程方式,在某层指定目录中优先查找文件内容-maxdepth           最大深度。大于此深度的路径不再索引
-follow             遵循通配符链接方式查找; 另外,也可忽略通配符链接方式查询-maxdepth [levels]  在某个层次的目录中按照递减方法查找

-mount              不在文件系统目录中查找, 用法类似 -xdev.

-noleaf             禁止在非UNUX文件系统,MS-DOS系统,CD-ROM文件系统中进行最优化查找

-version            打印版本数字

7)查找到文件并执行一定操作:

  1,如查找并显示文件属性:在查找后续添加 -ls

  2,找到文件并检测文件的MD5验证和。

find / -name "httpd.conf" -ls 

 find -iname "MyCProgram.c" -exec md5sum {} \;

  2,其他一些命令

-exec command            查找并执行命令

-fprint file             打印文件完整文件名

-fprint0 file            打印文件完整文件名包括空的文件

-fprintf file format     打印文件格式

-ok command;             给用户命令执行操作,根据用户的Y 确认输入执行

-printf format           打印文件格式 

进阶使用方式:

1)混合查找方式:and or ! 三种方式。

  1,例如:在/tmp目录中查找大于100000000字节并且在48小时内修改的某个文件。

find /tmp -size +10000000c -and -mtime +2
时间: 2024-10-26 03:56:41

linux的find指令详解。的相关文章

&lt;linux下sysctl指令详解&gt;

Sysctl指令是对系统核心参数的设置: 用法: -a 参数列出系统中所有核心设置 当然了这些核心的设置都是文件,存放于/proc/sys/net目录下. 举个有代表性的例子: net.ipv4.icmp_echo_ignore_all = 0      把所有的点改为 / 就可以了.   [[email protected] net]# net.ipv4.icmp_echo_ignore_all = 0 [[email protected] net]# cd ipv4/ [[email pro

Linux中tail指令详解

linux tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更新,tail会自己主动刷新,确保你看到最新的档案内容. 一,tail命令语法 tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]参数解释:-f 该参数用于监视File文件增长.-c Number 从 Number 字节位置读取指定文

linux/centos at指令详解

at 定时任务,指定一个时间执行一个任务,只能执行一次. 语法:# at [参数] [时间] at> 执行的指令 退出at命令 ctrl+d 命令前提: 需要开启atd进程(在redhat中atd是默认随系统启动而启动) 测试中发现在centos6.5 mini版中没有自带at服务,因此需要自己通过下载 # yum -y install at # ps -ef | grep atd ##查看是否开启atd # /etc/init.d/atd start ##开启atd # chkconfig -

Linux指令详解useradd groupadd passwd chpasswd chage 密码修改

创建用户.设置密码.修改用户.删除用户: useradd testuser 创建用户testuser passwd testuser 给创建的用户testuser设置密码 说明:新创建的用户会在/home下创建一个用户目录testuser usermod --help 修改用户这个命令的相关参数 userdel testuser 删除用户testuser rm -rf testuser 删除用户testuser所在目录 上面的几个命令只有root账号才可以使用,如果你不知道自己的系统上面的命令在

(转)Linux下PS命令详解

(转)Linux下PS命令详解 整理自:http://blog.chinaunix.net/space.php?uid=20564848&do=blog&id=74654 要对系统中进程进行监测控制,查看状态,内存,CPU的使用情况,使用命令:/bin/ps (1) ps :是显示瞬间进程的状态,并不动态连续: (2) top:如果想对进程运行时间监控,应该用 top 命令: (3) kill 用于杀死进程或者给进程发送信号: (4) 查看文章最后的man手册,可以查看ps的每项输出的含义

Linux下chkconfig命令详解

Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset] chkconfig在没有参数运行时,显示用法.如果加上服务名,那么就检查这个服务是否在当前运行级启动.如果是,返

转载的 Linux下chkconfig命令详解

Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法: chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset] chkconfig 在没有参数运行时,显示用法.如果加上服务名,那么就检查这个服务是否在当前运行级启动.如果是

linux中fork()函数详解[zz]

转载自:http://www.cnblogs.com/york-hust/archive/2012/11/23/2784534.html 一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事. 一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间.然后把原来的进程的所有值都复制到新的新进程中,只有

tar 指令详解

tar 解压缩命令 tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的参数是根据需要在压缩或解压档案时可选的. -z:有gzip属性的 -j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程 -O:将文件解开到标准输出 下面的参数-f是必须的 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名. # ta