每天一个Linux命令 - 【find】
命令:find
用途:查找文件并执行指令的操作
【语法】:find [路径] [选项] [参数]
【功能介绍】:find命令在指定的目录下查找文件。find命令还能够对查找到的文件执行的指定的操作,通过调用其他Linux命令来实现。
【选项说明】
-name name 表示包含指定匹配模式的文件名。
-iname name 表示包含指定匹配模式的文件名,不区分大小写。
-type x (x表示文件类型)。 指定文件类型查找文件。b块设备文件,c字符设备文件,d目录,p命名管道,f普通文件,l符号连接文件,s网络套接字文件....
-gid (组id) 查找属于指定组id的所有文件
-uid (用户id) 查找属于指定用户id的所有文件
-group (组名) 查找属于指定组名的所有文件
-user(用户名) 查找属于指定用户名的所有文件
-empty 查找文件大小为0的目录或文件
-path 查找指定的路径查找模式查找文件
-perm 按照指定的权限模式查找目录和文件
-size 按照指定文件的大小查找文件。文件大小的默认单位为块。每块512字节。
-amin/-cmin/-mmin [+-]n 查找文件最后一次访问时间/状态改变时间/修改的时间 其中-n表示访问时间为n分钟以内,+n表示访问时间距今n分钟以前。n表示恰好为n分钟
-atime/-ctime/-mtime [-+]n 同上,分钟改为天。
-print 在标准输出设备上显示查找到的文件信息。这是默认选项可以省略
-fprintf filename 不在终端打印查找到的文件信息。而是将其保存到指定的文件中。
-exec command {} \; 用指定的Linux命令操作查找到的文件。{}表示将查找到的文件作为命令的参数,\;是固定字符,放在find命令的最后。 不提醒用户进行确认。
-ok command {} \; 同上,提醒用户进行确认。
【经验技巧】
find命令支持逻辑运算符与(and)或(or)非(not)组成的复合查询条件。 选项-a为默认的选项。逻辑与表示当所有给定的条件都满足是符合查找条件。逻辑或表示只要所给的条件中有一个满足时符合查找条件。逻辑非表示查找所给的条件相反的文件。
【示例1】 -name -type
查找tmp目录下,文件名为1.txt
find /tmp -name 1.txt
查找tmp目录下,文件格式为普通文件
find /tmp -type f
查找/tmp目录下,文件类型非目录,文件名包含“.txt”的文件
find /tmp \! -type d -name “*.txt”
【示例2】 -path -perm
查找/tmp目录下 dir1目录下的包含.sh的文件
find /tmp -path "/tmp/dir1*" -name "*.sh"
查找/tmp目录下 除了dir1目录以外其他目录下包含*.sh的文件
find /tmp \! -path "/tmp/dir1*" -name "*.sh" (!取反的意思)
查找/tmp目录下,所有权限为755的文件
find /tmp -perm 755
【示例3】-exec command {} \; -ok command {} \;管道符
查找/tmp目录下 文件名包含.txt的文件并删除
find /tmp -name "*.txt" -ok rm -rf {} \;
查看/tmp目录下 文件的总数量
find /tmp -type f |wc -l
查看/tmp 目录下 文件名包含.txt的文件并查看文件的前5行
find /tmp -name "*.txt" -exec head -5 {} \;
每天一个Linux命令 - 【find】的更多相关文章
- 每天一个 Linux 命令(21):find命令之xargs
在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...
- 每天一个linux命令(25):linux文件属性详解
Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.具体情况如下: 命令: ls -lih 输出: [root@loca ...
- 每天一个linux命令(46):vmstat命令
vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存.进程.CPU活动进行监控.他是对系统的整体情况进行统计,不足之处是无法对某个进程进行深 ...
- 每天一个linux命令目录
出处:http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每 ...
- 每天一个 Linux 命令(20):find命令之exec
find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了. exec解释: -exec 参数后面跟的是command ...
- 每天一个linux命令(20):find命令之exec
find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了. exec解释: -exec 参数后面跟的是command ...
- 每天一个Linux命令
每天一个Linux命令(1):ls命令 每天一个Linux命令(2):cd命令 每天一个Linux命令(3):pwd命令 每天一个 Linux 命令(4):mkdir 每天一个 Linux 命令(5) ...
- 每天一个linux命令-转载
每天一个linux命令目录 转载自: http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令 ...
- [转]每天一个linux命令目录
[转]每天一个linux命令目录 http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每 ...
- 每天一个linux命令(45)--telnet命令
每天一个Linux命令,今天是网络命令中的Telnet. Telnet 命令通常用来远程登录,Telnet 程序是基于 Telnet 协议的远程登录客户端程序.Telnet 协议是TCP/IP协议族中 ...
随机推荐
- oracle 常用的系统表查询
(转自:http://blog.csdn.net/marshalchen/article/details/6552103) select * from user_tab_cols where colu ...
- python基础之迭代器协议和生成器(二)
一.什么是迭代器: 迭代是Python最强大的功能之一,是访问集合元素的一种方式. 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束. 迭代器是一个可以记住遍历的位置的对象. 迭代器的 ...
- 【PL/SQL编程】注释说明
1. 单行注释 由两个连接字符“--”开始,后面紧跟着注释内容. 2. 多行注释 由/*开头, 由*/结尾.
- 如何在JM8.6编码端提取QDCT?
毫无疑问,编码端的QDCT和解码端的QDCT完全相同,下面从编码端提取QDCT. 为简便起见,仅提取第一帧第一个宏块第一个4*4块的QDCT.JM8.6编码器最核心的编码函数是encode_one_m ...
- HAWQ取代传统数仓实践(十八)——层次维度
一.层次维度简介 大多数维度都具有一个或多个层次.例如,示例数据仓库中的日期维度就有一个四级层次:年.季度.月和日.这些级别用date_dim表里的列表示.日期维度是一个单路径层次,因为除了年-季度- ...
- (九)java位运算符
位运算符 &(与),|(或),^(异或),~(取反),<<(左移),>>(右移),>>>(无符号右移) 1:为true,0为false ...
- xcomponent web 跨域组件介绍
1. 项目地址: https://github.com/krakenjs/xcomponent 2. 支持的特性 a. Render an iframe or popup on a different ...
- assembly 需要 unload 和 update 的时候怎么办?
我正在开发公司的业务组件平台,组件池的灵活性要求很高,业务组件都是可以立即更新和及时装配的;目前完成这些功能,有待测试.用appDomain.unload 拆卸assembly 可以,只是用起来比较麻 ...
- easyui datagrid 单元格加进度条(亲测可用)
{field: 'DataItemNum', title: '数据完整度', width: 100, formatter: function (v, r, i) { var p = (v / 27) ...
- ehcache.xml配置
<?xml version="1.0" encoding="UTF-8"?> <ehcache xmlns:xsi="http: ...