find命令及详解

需要在系统中查找某个文件或者目录的时候,就需要用到find命令。它可以遍历给定的路径之下所有层级结构,来找到需要的文件。Find命令可以做到实时查找,精确查找,它需要遍历给定的目录下所有层级,所有速度略慢。

1、命令的格式:

find [OPTIONS] [路径] [条件] [处理动作]

2、命令的参数:

路径:给定具体的搜索起始路径,默认为当前目录。

查找条件:查找标准,可以根据文件名,从属关系,文件类型,大小,权限,时间等进行查找。

处理动作:查找完成后,可以指定命令对结果的操作。

3、命令的选项:

根据文件名称查找

-name :根据给定的名称查找;

-iname:查找名称时不区分大小写;

根据文件的从属关系查找

-user:根据属主查找;

-group:根据属组查找;

-uid:根据UID查找;

-gid:根据GID查找;

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

-nogroup:查找没有属组的文件;

根据文件的类型查找:

-type 类型:

f:普通文件;

d:目录文件:

l:符号链接文件;

b:块设备文件;

c:字符设备文件;

p:管道文件;

s:套接字文件;

根据文件大小查找:

-size [+|-]#UNIT

单位:k,M,G

根据时间戳查找:

以‘天’为单位:

-atime:访问时间

-mtime:修改时间

-ctime:改变时间

以‘分钟’为单位:

-amin

-mmin

-cmin

根据权限查找:

-perm [/|-]mode

mode:精确权限匹配;

/mode:任意一类用户的权限中任意一位符合条件即满足;

-mode:每一类用户的权限中的每一位同时符合条件即满足;

条件组合:

-a:‘与’操作,默认选项;

-o:‘或’操作;

-not \ !:‘非’;

4、处理动作

-print:标准输出;(默认)

-ls:对查找结果执行‘ls -l’命令,输出文件的详细信息;

-delete:删除查找的文件

-fls /PATH/TO/SOMEFILE:把查找到的所有文件的长格式保存至指定文件中;

-ok COMMAND {} \;   :对查找到的每个文件执行COMMAND命令,交互式操作;

-exec COMMAND {} \;    :对查找到的每个文件执行COMMAND命令;

5、其他说明

find查找到的结果,是一次性给出,并传递给后面的命令,但是有些命令不能接受过长的参数.

例如:find /etc -type f | ls -l 这样是错的。此时,可以用到xargs命令。

例如:find /etc -type f | xargs ls -l

Xargs可以读入查找到信息,并且以空白符或换行符作为分辨。将查找到的信息分隔成多个参数。

6、实例操作

①查找/home中所有的.txt文件并显示

find /home -type f -a -name “*.txt” -ls

②查找以大写字母开头的文件

find / -type f -a -name “[A-Z]*” -ls

③查找所有用户都可读写执行的文件

find / -type f -perm -007 -ls

④查找/etc目录下,所有用户都有执行权限,且其他用户有写权限的所有文件

find /etc/ -type f -a -perm -111 -a -perm -002 -ls

⑤查找/etc目录下,大于1M,且最近一周内容修改过的文件或目录

find /etc/ -size +1M -a -mtime -7 -ls

⑥查找/usr/目录下,不属于root,bin或hadoop的所有文件或目录

find /usr/ -not \( -user root -o -user bin -o -user hadoop \) -ls

时间: 2024-12-14 04:49:22

find命令及详解的相关文章

Pip 命令使用详解

Pip 命令使用详解 2015-01-06 21:44 3033人阅读 评论(0) 收藏 举报  分类: debian(3)  redis(1)  python 1.pip下载安装1.1 pip下载 1 # wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb" --no-check-certificate 1.2 pip安装 1

linux wget 命令用法详解(附实例说明)

Linux wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器.如果我们使用虚拟主机,处理这样的事务我们只能先从远程服务器下载到我们电脑磁盘,然后再用ftp工具上传到服务器.这样既浪费时间又浪费精力,那不没办法的事.而到了Linux VPS,它则可以直接下载到服务器而不用经过上传这一步.wget工具体积小但功能完善,它支持断点下载功能,同时支持FTP和HTTP下载方式,支持代理服务器和设置起来

linux nc命令使用详解(转)

linux nc命令使用详解 功能说明:功能强大的网络工具 语 法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...] 参 数: -g<网关> 设置路由器跃程通信网关,最丢哦可设置8个. -G<指向器数目> 设置来源路由指向器,其数值为4的

【转】 wget 命令用法详解

wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能和特点:(1)支持断点下传功能:这一点,也是网络蚂蚁和FlashGet当年最大的卖点,现在,Wget也可以使用此功能,那些网络不是太好的用户可以放心了:(2)同时支持FTP和HTTP下载方式:尽管现在大部分软件可以使用HTTP方式下载,但是,有些时候,仍然需要使用FTP方式下载软件:(3)支持代理服务器:对安全强度很高的系统而言,一般不会将自己的系统直接暴

Mysql导入导出工具Mysqldump和Source命令用法详解

mysqldump -u 用户名 -p [--opt] DATABASENAME [Table] >导出SQL文件名 例子: mysqldump -h host -u user -p --opt databasename [table] > /home/user/databasename.sql 使用Mysqldump导出数据表结构 mysqldump -u root -p --no-data mysql user >D:\PHPWeb\sqlbackup\mysql_user.sql

揭秘SFTP&&SCP命令 Linux详解

很多童鞋对于如果在字符终端进行上传下载以及复制的命令不熟悉,那么下面我就来说一下如何通过sftp以及scp命令进行上传下载以及复制文件的操作. 先来看一下sftp命令: 举例说明:现在我有两台虚拟机,分别是192.168.1.118和192.168.1.121,假设121的主机是远程服务器,且服务器上有一个user2的用户.此时,你想将118上的/etc/passwd文件上传到user2的主目录下,并将user2的.bashrc文件复制到118主机的/tmp目录下. 上传命令是put,下载命令是

[转载]JAVA 命令参数详解:-D

原文链接:http://blog.sina.com.cn/s/blog_605f5b4f0100hlt9.html JAVA 命令参数详解: 1.-D<name>=<value> set a system property  设置系统属性. java -D参数简化加入多个jar java命令引入jar时可以-cp参数,但时-cp不能用通配符(多个jar时什么烦要一个个写,不能*.jar),面通常的jar都在同一目录,且多于1个.前些日子找到(发现)-Djava.ext.dirs太好

JAVA 命令参数详解System.setProperty(

JAVA 命令参数详解: 1.-D<name>=<value> set a system property  设置系统属性. java -D参数简化加入多个jar java命令引入jar时可以-cp参数,但时-cp不能用通配符(多个jar时什么烦要一个个写,不能*.jar),面通常的jar都在同一目录,且多于1个.前些日子找到(发现)-Djava.ext.dirs太好. 如: java -Djava.ext.dirs=lib MyClass 可以在运行前配置一些属性,比如路径什么的

批处理中的echo命令图文详解

批处理中的echo命令图文详解 1. Echo 显示当前ECHO的状态:ECHO ON 或者ECHO OFF 2. ECHO ON 将ECHO状态设置为ON,将显示命令行,也就是前面的C:\>类似的标志,如图所示: 3. ECHO OFF 将ECHO状态设置为OFF,将不显示命令行,也就是前面的C:\>类似的标志,其他功能一样,用户也可以输入命令,也可以显示命令结果,如图所示: 4. ECHO 字符串 将输入的字符串显示在CMD屏幕上.如图所示 5. ECHO 字符串 &ECHO 字符

[转]Mysql导入导出工具Mysqldump和Source命令用法详解

Mysql本身提供了命令行导出工具Mysqldump和Mysql Source导入命令进行SQL数据导入导出工作,通过Mysql命令行导出工具Mysqldump命令能够将Mysql数据导出为文本格式(txt)的SQL文件,通过Mysql Source命令能够将SQL文件导入Mysql数据库中,下面通过Mysql导入导出SQL实例详解Mysqldump和Source命令的用法. 在PHP网站开发中,时常遇到Mysql数据库备份或数据库迁移工作,这时Mysql怎么导入导出数据库中的数据就非常关键,M