Linux命令(七)查找文件或目录 find
find 命令可以根据给定的路劲和表达式查找指定的文件或目录。find 参数选项很多,并且支持正则表达式,功能强大。 和管道结合使用可以实现复杂的功能,是系统管理和普通用户必须掌握的命令。
一、find 命令格式说明
path find命令查找的目录路径。
-print find命令将匹配到的文件输出到标准输出。
-exec find 命令对匹配的文件执行该参数所给出的Shell命令。
-ok 和 -exec的作用相同,只是更安全,在执行每个命令之前,都会给出提示,让用户来确定是否执行。
二、find命令常用参数说明
-name 按照文件名查找文件
-cpio: 对匹配的文件使用 cpio 命令,将这些文件备份到磁带设备中
-prune 按照文件权限进行查找文件
-user 按照文件属主来查找文件
-group 按照文件所属的组来查找文件
-mtime -n +n 按照文件更改的时间来查找文件,-n 表示更改时间距现在 n 天以内,+n 表示更改时间距现在 n 天以前
-nogroup 查找无效所属组的文件
-nouser 查找无效属主文件
-newer file1 !file2 查找更改时间比 file1 新但比 file2 旧的文件
-follow 如果 find 查找的为链接文件,就跟踪至连接所指向的文件
-mount 在查找文件时不跨越文件系统 mount 点
-fstype 查找位于某一类型文件系统中的文件
-depth 在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找
-size n 查找文件长度为 n 块的文件,带有 c 时表示文件长度以字节计
-type 查找某一类型的文件
-amin n 查找系统中最后 n 分钟访问的文件
-atime n 查找系统中最后 n*24 小时访问的文件
-cmin n 查找系统中最后 n 分钟被改变文件状态的文件
-ctime n 查找系统中最后 n*24 小时被改变文件状态的文件
-mmin n 查找系统中最后 n 分钟被改变文件数据的文件
-mtime n 查找系统中最后 n*24 小时被改变文件数据的文件
-empty 查找系统中空白的文件或目录,或目录中没有子目录的文件夹
-false 查找系统中总是错误的文件
-gid n 查找系统中文件数字组ID为 n 的文件
-daystart 测试系统中从今天开始 24 小时以内的文件,用法类似于 -amin
-help 显示命令摘要(帮助)
-maxdepth levels 在某个层次目录中按照递减方法查找
三、find基本用法
find 如不加任何参数,表示查找当前路径下的所有文件和目录
find -print 将结果打印到标准输出
find /data/log 指定路劲查找
find / -name "abc.txt" 在系统中查找 abc.txt 如果执行完毕没有找到,则说明系统中不存在该文件
find 还支持正则表达式查找
find /data/logs -mame "*.log" -type f -printf 查找符合指定字符串的文件
find . -name "[0-9]" -type f 查找以数字开头的文件
find / -mtime -1 |head 查找系统内最近24小时修改过的文件
find / -mmin -15|head 查找系统内最近15 分钟修改过的文件
find 使用 type 选项可以查找特定的文件类型,常见类型如下
b 块设备文件
d 目录
c 字符设备文件
p 管道文件
l 符号链接文件
f 普通文件
find . -type d 查找当前路径中的所有目录
find . -type f 查找当前路径中的所有文件
find . -type l 查找当前路径中的所有符号链接文件
更多实例将在使用中不断补充.....
四、xargs命令
find命令可以把匹配到的文件传递给 xargs 命令执行,在使用 find 命令的 -exec 选项处理匹配到的文件时,find将所有匹配到的文件一起传递给 exec 执行。由于有些系统对能够传递给 exec 的命令长度有限制,这样会引起溢出错误。这时可以使用 xargs 命令。
find / type f -print | xargs file 查找系统中的每一个普通文件,并用 file 命令来测试它们分别属于哪一类文件。
find . -type f -name "\.log" -print | xargs rm 查找当前目录下的 .log 文件,并删除 。
find . -type f -exec ls -l {} \; 用 ls -l 列出所有匹配到的文件。
find logs -type f -mtime +5 -exec rm {} \; 查找 log 中更改时间在 5 天前的文件并删除。
find logs -type f -ok rm {} \; 查找 log中的所有普通文件并在删除前确认。
find . -type f -name "\.log" -print | gerp "node" 查找当前目录下的 .log 文件,并从查找结果中筛选出带有 node 字符串的文件 。
Linux命令(七)查找文件或目录 find的更多相关文章
- Linux 命令大全 - 管理文件和目录的命令
1.pwd 显示当前目录 该命令的英文解释为print working directory(打印工作目录).输入pwd命令,Linux会输出当前目录. 2.cd 命令用来改变所在目录 cd / 转到根 ...
- Linux 命令 - cp: 拷贝文件和目录
命令格式 cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY ...
- linux命令学习 查找文件和文件夹
1: 查找根目录下查找文件夹名称叫XXXX的目录地址 find / -name XXXX -d 2: 查找/var/www/目录下叫index.php的文件 find /var/www/ -name ...
- Linux 命令 - rm: 删除文件和目录
命令格式 rm [OPTION]... FILE... 命令参数 -f, --force 强制删除,忽略不存在的文件,不会提示. -i, --interactive 没次删除文件时,提示用户确认. - ...
- Linux命令: 查找文件中的字符串
①cat filename | grep 'string' ②编辑模式查找,/string, 依次敲入下面的命令 vim filename e i ESC /string 从光标位置开始往后查找第一个 ...
- linux查找文件或目录命令
inux查找文件或目录命令,前提:知道文件或者目录的具体名字,例如:sphinx.conf find 查找 find / -name dirname 查找目录 find -name filenam ...
- Linux命令进阶篇-文件查看与查找
上一篇的博客对于Linux如何在不同目录下跳转和查看目录下内容做出了总结,主要靠cd和ls,很常见也很实用.但是你看到目录下面那么多不同花花绿绿的文件,心里是不是痒痒,是不是想进去一探究竟,有办法! ...
- Linux常用命令01(文件和目录)
目标 查看目录内容 ls 切换目录 cd 创建和删除文件 touch rm mkdir 拷贝和移动文件 cp mv 查看文件内容 cat more grep 其他 echo 重定向 > 和 &g ...
- Linux命令(20)linux服务器之间复制文件和目录
linux的scp命令: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们需要获得远程服务器上 ...
- 在linux服务器之间复制文件和目录命令scp
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...
随机推荐
- win10下nvidia控制面板看不到
64位win10,nvidia控制面板看不到,控制面板里没有,服务里也没有nvidia相关服务,但驱动已经安装了. 解决办法: 1.下载GeForce Experience并安装 . 2.通过GeFo ...
- Python2.7-bz2
bz2模块,提供 bz2 压缩的接口,一般使用 BZ2File 类来完成操作,操作的文件是后缀为“.bz2”的文件 1.模块方法 bz2.compress(data[, compresslevel]) ...
- CentOS中配置Kafka集群
环境:三台虚拟机Host0,Host1,Host2 Host0:192.168.10.2 Host1: 192.168.10.3 Host2: 192.168.10.4 在三台虚拟机上配置zook ...
- 如何查看Drupal网站使用的模块
大家在学习使用Drupal的过程中,总喜欢去查看或借鉴那些做得十分优秀的drupal网站,很想知道这个drupal网站使用了哪些模块?其实很简单,已经有人帮我们实现了这个愿望. 那就是DrupalXr ...
- odoo之显示前端,数据,可选择
def create(self,cr,uid,vals,context=None): if context is None: context ={} if vals.get('name','/')== ...
- 大数据入门第二十天——scala入门(二)scala基础02
一. 类.对象.继承.特质 1.类 Scala的类与Java.C++的类比起来更简洁 定义: package com.jiangbei //在Scala中,类并不用声明为public. //Scala ...
- 学会查看Linux手册页(man文档)
区段1:用户指令区段2:系统调用区段3:程序库调用区段4:设备区段5:文件格式区段6:游戏区段7:杂项区段8:系统指令区段9:内核内部指令区段n:Tcl或Tk指令 如果记不清楚工具或者函数的完整名字, ...
- 01-BAT算法特训班
- [CF1007D]Ants[2-SAT+树剖+线段树优化建图]
题意 我们用路径 \((u, v)\) 表示一棵树上从结点 \(u\) 到结点 \(v\) 的最短路径. 给定一棵由 \(n\) 个结点构成的树.你需要用 \(m\) 种不同的颜色为这棵树的树边染色, ...
- effective c++ 笔记 (3-4)
//---------------------------15/03/26---------------------------- 3:const函数的哲学思辨:就当是科普知识吧!如果成员函数是con ...