Linux中find名令的用法

find命令的用法:

定义:在本地文件系统中执行实时搜索,查找符合命令行参数条件的文件。

使用格式:find 目标文件 匹配选项 匹配参数

find的第一个参数是要搜索的目录,若省略了目录参数,则find将从当前目录中开始搜索,并在任何子目录中查找匹配项。

find可以提供许多选项来准确的描述应查找的文件类型,可以根据文件名、文件大小、最近修改时间戳和其他文件特性的任意组合进行搜索。

eg:

find / -name sshd_config     在根目录和所有子目录中搜索名为sshd_config的文件

find / -name ‘*pass*’     在/etc目录中搜索名称中任意位置包含pass的文件

find / -iname ‘*messages*’  -i表示忽略大小写

find可以根据所有权限来搜索文件,此时可使用的选项有-user、-group、-uid、-gid等

eg:

find / /home/student –user student 在/home/student目录下查找student用户所拥有的文件

find / /home/student –group student 在/home/student目录下搜索student组所拥有的文件

find / -user root –group mail

-perm选项用于查找具有特定权限集的文件

权限前面可以有/或-符号,带有/的数字权限将匹配文件的用户、组、其他人权限集中的至少一位,与/或-一起使用时,0值类似于通配符,表示“至少无任何内容的权限”

eg:

find /home –perm 644 匹配用户具有读写权限,组成员拥有读权限,其他人具有读权限

find /home –perm -724 匹配用户至少有读写执行权限,组成员至少写权限,其他人至少有读权限

find –perm -004

find 命令可以查找与指定的大小相符的文件,通过-size选项加上数字值与单位来指定

n :等于n的大小

+n:大于n的大小

-n :小于n的大小

与size使用的单位有:k 千字节  M 兆字节  G 千兆字节

eg:

find –size 10M    在当前目录下搜索大小为10M的文件

find –size +10M   在当前目录下搜索大小大于10M的文件

find –size -10M   在当前目录下搜索大小小于10M的文件

-size 单位修饰符将所有内容向上取整为一个单位,如find-size 1M将显示小于1MB的文件,因为它将所有文件都向上取整为1MB

-type 选项将搜索范围限制为给定的文件类型,类型有

f:普通文件

d:目录

l:软链接(符号链接)

b:块设备

eg:

find /etc –type f   搜索/etc 目录下的所有普通文件

find /etc –type d   搜索/etc文件夹中的所有目录

find /etc -type l   搜索/etc目录中的所有符号链接

find /dev –type b   搜索/dev目录中的所有设备的列表

-mmin 选项加上以分钟表示的时间,将搜索内容正好在过去所给时间更改的所有文件,

类似的还有-amin,-cmin

m表示修改modify,min表示分钟,a表示访问,c表示创建

-mtime 选项以天为单位,类似的有-ctime,-atime

eg:

find / -mmin 120  将搜索离修改时间刚好是120分钟的文件

find / -mmin +200  将查找在200分钟以前更改的所有文件

find / -mmin -150  将搜索离修改时间少于150分钟的所有文件

-links 选项加上数字将查找具有特定硬链接数的所有文件,苏子前面带有+修饰符将查找硬链接数超过所给数目的文件,若数字前面带有~修饰符,则搜索将限制为硬链接数小于所给数目的所有文件。

eg:

find / -type f –links +1  根目录下搜索硬链接数大于1的所有普通文件

复杂的用法:可以将搜索的文件执行另外的操作

eg:

find /usr/bin –size +50K –exec cp {}/tmp/bin \; 搜索/usr/bin/目录下大小为50K的所有文件,并将其复    制到/tmp/bin目录下

find /usr/bin –type f –exec rm –rf {}\;  搜索/usr/bin目录下的所有普通文件,并对它执行删除操作

时间: 2024-10-12 16:30:21

Linux中find名令的用法的相关文章

linux中grep和find的用法区别

linux中grep和find的用法区别 本文章详细的介绍了关于在linux中的grep和find两个命令的用法介绍,以及后面总结了它们两年用法区别哦. 先我们来介绍一下关于grep用法和一些小注意事项 使用过程中,使用最多的参数就是 -v ,但是用着并不爽. 比如说,我想查找一个单词“UserService”,但是像”*.svn” 这种文件就不用显示了,我该怎么做呢? 代码如下 复制代码 grep -r "UserService" ./ | grep -v "svn&quo

转:Linux中find命令-path -prune用法详解

在Windows中可以在某些路径中查找文件,也可以设定不在某些路径中查找文件,下面用Linux中的find的命令结合其-path -prune参数来看看在Linux中怎么实现此功能. 假如在当前目录下查找文件,且当前目录下有很多文件及目录(多层目录),包括dir0.dir1和dir2 ...等目录及dir00.dir01...dir10.dir11...等子目录. 1. 在当前目录下查找所有txt后缀文件 find ./ -name *.txt 2.在当前目录下的dir0目录及子目录下查找txt

12个 Linux 中 grep 命令的超级用法实例

12个 Linux 中 grep 命令的超级用法实例 你是否遇到过需要在文件中查找一个特定的字符串或者样式,但是不知道从哪儿开始?那么,就请grep来帮你吧. grep是每个Linux发行版都预装的一个强有力的文件模式搜索工具.无论何种原因,如果你的系统没有预装它的话,你可以很容易的通过系统的包管理器来安装它(Debian/Ubuntu系中的apt-get和RHEl/CentOS/Fedora系中的yum). $ sudo apt-get install grep #Debian/Ubuntu

关于linux中sed命令的简单用法

linux中sed的学习和使用 今天突然用到了sed这个命令,就即兴学习了一波突然感觉这个功能还是很强的.sed在#man sed下文档查看解释的是:用于过滤和转换文本的流编辑器.即如下图: 我自己用过这个命令之后感觉对于文档来说可以显示某个区间行,显示结果还可以在段前后添加内容删除,替换内容.但是最后才发现,怎么还能直接修改到文件里不仅仅是显示出来,文件内容直接被修改了. 下面就一一介绍这个有趣的命令,莫急莫急一个一个来. 首先找个文件(没用的文件且有内容,搞坏了系统文件可不好玩了)来当测试文

Linux中find命令-path -prune用法详解

摘自:http://www.cnblogs.com/hopeworld/archive/2011/04/08/2009252.html 在Windows中可以在某些路径中查找文件,也可以设定不在某些路径中查找文件,下面用Linux中的find的命令结合其-path -prune参数来看看在Linux中怎么实现此功能. 假如在当前目录下查找文件,且当前目录下有很多文件及目录(多层目录),包括dir0.dir1和dir2 ...等目录及dir00.dir01...dir10.dir11...等子目录

Linux中su和sudo的用法

su -#su - oldboy //当执行这个命令的时候表示切换到oldboy用户,并且重新读取用户环境相关配置文件,具体的来说就是执行下用户家目录下.bash_profile和.bashrc文件,这个我们成为全切换su#su oldboy //执行这个命令的时候系统不读取以上两个文件,所以我们一般称它为半切换,这样切换过去之后,oldboy用户使用的依旧是此前用户的环境配置信息sudo#sudo这个命令设计初的主要目的是为了使某些用户具有特定用户的一些特殊的权限,举例说明:比如A,B两个人,

Linux中more和less命令用法

一.more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上. more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 .more命令从前向后读取文件,因此在启动时就加载整个文件. 1.命令格式: more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ] 2.命令功能: more命令和cat的功能一

Linux中crond服务与crontab用法

需要写个在Linux下定时更新系统的脚本,man crondtab 不甚详细,现将网络上的介绍列举如下: crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序使用cron服务,用 service crond status 查看 cron服务状态,如果没有启动则 service crond start启动它,cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务: crontab -u //设定某个用户的cron服务,一般ro

linux中man手册的高级用法

Linux提供了丰富的帮助手册,当你需要查看某个命令的参数时不必到处上网查找,只要man一下即可. Linux 的man手册共有以下几个章节: 1.Standard commands (标准命令) 2.System calls (系统调用) 3.Library functions (库函数) 4.Special devices (设备说明) 5.File formats (文件格式) 6.Games and toys (游戏和娱乐) 7.Miscellaneous (杂项) 8.Administ