CentOS 文件搜索find
1、文件搜索,内置的的命令是find
用法: find [查找路径] 寻找条件 操作 默认路径为当前目录;默认表达式为 -print
2、主要参数:
-name 匹配名称
-perm 匹配权限(mode为完全匹配,-mode 为包含即可)
-user 匹配所有者
-group 匹配所有组
-mtime -n +n 匹配修改内容的时间(-n指 n天以内,+n指 n天以前)
-atime -n +n 匹配访问文件的时间(-n指 n天以内,+n指 n天以前)
-ctime -n +n 匹配修改文件权限的时间(-n指 n天以内,+n指 n天以前)
-nouser 匹配无所有者的文件
-nogroup 匹配无所有组的文件
-newer f1 !f2 匹配比文件 f1新但比 f2旧的文件
--type b/d/c/p/l/f 匹配文件类型(后面的字母参数依次表示块设备、目录、字符道、链接文件、文本文件)
-size 匹配文件的大小(+50KB 为查找超过 50KB 的文件,而-50KB小于50KB的文件)
-prune 忽略某个目录
-exec …… {}\; find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格,{}表示查找出来的没一个文件,结尾必须是"\;"
3、按名字查找
在/opt目录下查找elasticsearch的配置文件
[root@bigdata-senior01 ~]# find /opt -name "elastic*.yml"
/opt/elasticsearch-6.5.1/config/elasticsearch.yml 查找过程中出现“权限不够”的提示:
[xu.dm@bigdata-senior01 ~]$ find /opt -name "elastic*.yml"
find: ‘/opt/modules/hadoop-3.1.0/logs/userlogs/application_1527345950418_0001_DEL_1527434392341’: 权限不够
find: ‘/opt/data/tmp/dfs/data’: 权限不够
find: ‘/opt/data/tmp/nm-local-dir/usercache_DEL_1527434391968/root’: 权限不够
find: ‘/opt/data/tmp/nm-local-dir/nmPrivate’: 权限不够
find: ‘/opt/data/tmp/nm-local-dir/usercache/hadoop’: 权限不够
/opt/elasticsearch-6.5.1/config/elasticsearch.yml
避免因为权限不够的提示,把查找错误提示转移到特定的目录中去。
[xu.dm@bigdata-senior01 ~]$ find /opt -name "elastic*.yml" 2> /dev/null
/opt/elasticsearch-6.5.1/config/elasticsearch.yml 按名字忽略大小写搜索
[root@vmstation ~]# find /etc -iname "SELINUX"
/etc/sysconfig/selinux
/etc/selinux
4、按文件大小查找
查找/home下大于10M的文件
[root@bigdata-senior01 ~]# find /home -size +10M
/home/data/kafka_2.12-2.0.0.tgz
查找小于1k的文件
[root@bigdata-senior01 ~]# find /home -size -1k
5、与,或条件,and,or
[root@bigdata-senior01 ~]# find /opt -name "*yml" -and -name "elastic*"
/opt/elasticsearch-6.5.1/config/elasticsearch.yml find / -user fred -or -user georg
6、其他
find / -amin -10 # 查找在系统中最后10分钟访问的文件
find / -atime -2 # 查找在系统中最后48小时访问的文件
find / -empty # 查找在系统中为空的文件或者文件夹
find / -group cat # 查找在系统中属于 groupcat的文件
find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件
find / -mtime -1 #查找在系统中最后24小时里修改过的文件
find / -nouser #查找在系统中属于作废用户的文件
find / -user fred #查找在系统中属于FRED这个用户的文件 在find命令中还可以使用“非”的关系来查找文件,如果我们要在/tmp目录中查找所有不属于panda的文件,使用一个简单的
find /tmp ! -user panda 查找并显示文件的方法
find / -name "httpd.conf" -ls find . -perm -007 -exec ls -l {} \; #查所有用户都可读写执行的文件同-perm 777
find . -name "[a-z][a-z][0–9][0–9].txt" -print #查以两个小写字母和两个数字开头的txt文件
find /home -uid +501 列出/home目录内用户的识别码大于501的文件或目录
find /home -gid 501 列出/home内组id为501的文件或目录
7、exec参数,{}表示查找出来的没一个文件,结尾必须是"\;"
在/opt目录下查找文件,并拷贝到但前目录下
[root@bigdata-senior01 ~]# find /opt -name "elastic*.yml" -exec cp {} ./ \;
找到文件并用ls -lh显示
[root@bigdata-senior01 ~]# find /opt -name "*.conf" -exec ls -lh {} \;
-rw-r--r--. 1 hadoop hadoop 1.1K 3月 30 2018 /opt/modules/hadoop-3.1.0/share/hadoop/yarn/yarn-service-examples/httpd/httpd-proxy.conf
-rw-r--r--. 1 hadoop hadoop 1009 3月 30 2018 /opt/modules/hadoop-3.1.0/share/hadoop/yarn/yarn-service-examples/httpd-no-dns/httpd-proxy-no-dns.conf
CentOS 文件搜索find的更多相关文章
- (八)Centos之文件搜索命令locate
一.文件搜索命令locate locate优点是 搜索速度快 ,缺点是只能按文件名搜索: 1.1 新建一个文件 1.2 更新数据库 locate命令搜索的是 /var/lib/mlocate 下的 ...
- 4.Linux的文件搜索命令
1.文件搜索命令 which 语法:which [命令名称] 范例:$which ls 列出ls命令所在目录 [chanshuyi@localhost ~]$ which ls alias ls= ...
- Everything(文件搜索神器)
前言 Everything官网: http://www.voidtools.com/ 软件版本: V1.3.4.686 (x64) 操作系统: windows 7/10 搜索FTP(内网)资源 比如内 ...
- 第3章 Linux常用命令(3)_文件搜索命令
3. 文件搜索命令 3.1 文件搜索:find (1)find命令 命令名称 find 命令所在路径 /bin/find 执行权限 所有用户 语法 find [搜索范围] [-选项] [匹配条件] - ...
- gcc编译时头文件和库文件搜索路径
特殊情况:用户自定义的头文件使用#include"mylib"时,gcc编译器会从当前目录查找头文件 一.头文件 gcc 在编译时寻找所需要的头文件 : ※搜寻会从-I开始( ...
- Linux常用命令学习2---(文件搜索命令locate find、命令搜索命令whereis which、字符串搜索命令grep、帮助命令man)
1.文件搜索命令:locate [文件名] 在后台数据库中按文件名搜索,搜索速度比find快,耗费资源更少 例子:locate test.txt,就会显示文件名包含 test.txt的所 ...
- Linux文件搜索命令
文件搜索命令:locate locate 文件名 在后台数据库中按文件名搜索,搜索速度很快(比find命令要快得多) locate命令所搜索的后台数据库的位置:/var/bin/mlocate 支持模 ...
- 超级文件搜索器(SuperSearch)
写了个工具,各个分享渠道上传太难了,在这里分享给大家吧! 中文名称:超级文件搜索器 英文名称: SuperSearch 适用对象:硬盘里文件达到数万至数千万级的用户 运行环境:WindowXP,Wi ...
- centos文件误删除恢复
Centos 文件误删除 当意识到误删除文件后,切忌千万不要再频繁写入了,否则 你的数据恢复的数量将会很少. 而我们要做的是,第一时间把服务器上的服务全部停掉,直接killall 进程名 或者 kil ...
随机推荐
- SQL注入的原理与预防
1. 什么是SQL注入? SQL注入是常见的网络攻击方式之一,通过SQL语句实现无账号登录,非法获取甚至篡改数据库中的数据. 2. SQL注入的思路 (1)找到SQL注入位置: (2)判断服务器类型和 ...
- 三、并行流与串行流 Fork/Join框架
一.并行流概念: 并行流就是把一个内容分成多个数据块,并用不同的线程分别处理每个数据块的流. java8中将并行进行了优化,我们可以很容易的对数据进行并行操作.Stream API可以声明性的通过pa ...
- 你想找的Python资料这里全都有!没有你找不到!史上最全资料合集
你想找的Python资料这里全都有!没有你找不到!史上最全资料合集 2017年11月15日 13:48:53 技术小百科 阅读数:1931 GitHub 上有一个 Awesome - XXX 系列 ...
- python 函数定义顺序
#!/usr/bin/python # Hello World def order(): print("haha") print('Hello World!') order()
- Linux命令应用大词典-第39章 网络安全
39.1 rtacct:网络统计工具 39.2 nmap:报告远程主机特征 39.3 tcpdump:实现网络数据采集分析 39.4 iptstate:显示IP表状态表条目 39.5 nstat:监控 ...
- Java 语法基础
一 关键字 关键字: 其实就是某种语言赋予了特殊含义的单词 保留字: 其实就是还没有赋予特殊含义 但是准备日后要使用过的单词 二 标示符 标示符: 其实就是在程序中自定义的名词 比如类名, 变量名, ...
- 了解Python控制流语句——while 语句
while 语句 Python 中 while 语句能够让你在条件为真的前提下重复执行某块语句. while 语句是 循环(Looping) 语句的一种.while 语句同样可以拥有 else 子句作 ...
- java扫描控制台输入
由于因最近练习算法的需要,加上API文档中翻译的太过模糊,做了一些小测试,算是武断的记下一些个人结论. Scanner cin = new Scanner(System.in); 对于cin.next ...
- 基于freeRTOS定时器实现闹钟(定时)任务
基于freeRTOS定时器实现闹钟(定时)任务 在智能硬件产品中硬件中,闹钟定时任务是基本的需求.一般通过APP设置定时任务,从云端或者是APP直连硬件将闹钟任务保存在硬件flash中,硬件运行时会去 ...
- Python—元组(戴上了枷锁的列表)
一.概念 元组属于不可变序列,元组是包含多个元素的类型,元素之间用逗号分割.例如:t1=123,456,“hello”元组可以是空的,t2=()元组包含一个元素时:t3=123,元组外侧可以使用括号, ...