Linux的find指令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux的find指令相关的知识,希望对你有一定的参考价值。

Linux下find命令在目录结构中搜索文件,并执行指定的操作。


find命令:


1.命令格式:

find pathname -options [-print -exec -ok ...]


2.命令功能:

用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)


3.命令参数:

1)pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。 

2)-print: find命令将匹配的文件输出到标准输出。 

3)-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为‘command‘ { } \;注意{ }和\;之间的空格。 

4)-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。


4.命令选项:技术分享

1)-name  按照文件名查找文件。

a)find ./ -name test  查找当前目录下文件名为“test”的文件

技术分享

b)find . -name ‘test*‘  查找当前目录下文件名包括“test”的文件

技术分享 

 

技术分享2)-size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计。

    b——块(512字节); c——字节; w——字(2字节);

    k——千字节 ; M——兆字节; G——吉字节。

a)find ~ -size +100k    查找比100k大的文件

技术分享 

b)find ~ -size -100k    查找比100k的文件

技术分享 

c)find ~ -size 100k    查找比100k的文件

技术分享 

 

3)-prem根据文件权限查找文件

a)find -perm -g=w 找到具有组读权限的文件

技术分享 

 

4)-type 查找某类型的文件,诸如:

    b - 块设备文件。

    d - 目录。

    c - 字符设备文件。

    p - 管道文件。

    l - 符号链接文件。

    f - 普通文件。

a) find . -type d  查找文件类型为目录的文件

技术分享 

 

5)根据文件时间来查找

Linux文件系统中每一个文件都有三种时间戳

a)访问时间(-atime):用户最近一次访问文件的时间;

b)修改时间(-mtime):文件内容最后一次被修改的时间。

c)变化时间(-ctime):文件元数据(metadata,例如权限或所有权)最后一次改变的时间。

-atime,-mtime,-ctime作为时间参数,单位是天。可以使用+表示大于,-表示小于(和根据文件的大小查找中的+,-相同)。

我们在这里只针对-mtime举例子了,其他两个时间戳也是一样的。

 

1.find ./ -mtime +3   查找大于3天前修改过的文件

技术分享 

2.find ./ -mtime -3   查找3修改过的文件

技术分享 


本文出自 “百夜米迦尔” 博客,请务必保留此出处http://10739720.blog.51cto.com/10729720/1775898

以上是关于Linux的find指令的主要内容,如果未能解决你的问题,请参考以下文章

Linux下find指令

Linux的find指令

Linux下的find指令应用

linuxlinux下find指令的用法总结

Linux系统下的find指令操作

linux-find搜索指令详解