Linux常用命令 - find命令基础使用(重点)
21篇测试必备的Linux常用命令,每天敲一篇,每次敲三遍,每月一循环,全都可记住!!
https://www.cnblogs.com/poloyy/category/1672457.html
首先,先造一点数据
mkdir -p ~/test/cool
touch ~/test/cool/test{..}.txt
touch ~/test/cool/{1..3}.sh
chmod 777 *.sh
history > test.txt
ls >> test1.txt
ls >> test1.txt
最基础的打印操作
find ~/test
知识点
- -print 是默认就有的,不写也可以,而 -print 默认是以 \n 来分隔找到的文件
- 如果不想换行打印,可以考虑空格分隔,加上 -print0 即可
find ~/test -print0
执行结果
通过文件名搜索
- -name:仅可以对文件的file_name匹配
- -path:可以对文件的dir_name、file_name匹配
查找的文件名最好使用引号包围,可以配合通配符进行查找
查找~/test下的.txt文件
find ~/test -name "*.txt"
在~/test下查找cool文件夹下的.txt文件
find ~/test -path "/*cool*/*.txt"
倘若,我们通过-name来执行会是怎么样的呢?是会报错的
因为 -name 是不能使用 / 的,除非文件名包含了 / , 因为 -name 只能匹配 file_name (即文件名),并不匹配 dir_name (即目录名)
所以想要在指定目录(~/test)下搜索某目录中(/cool)的某文件(.txt),应该使用-path而不是-name
通过文件的类型来搜索
在~/test目录下查找所有的目录
find ~/test -type d
在~/test目录下查找所有的文件
find ~/test -type f
还有其他不常用的文件类型
- b:块设备
- c:字符设备
- p:管道
- l:符号链接
通过文件的时间来搜索
在~/test目录下查找修改时间在5日以内的文件
find ~/test -mtime -
在~/test目录下查找修改时间在3日以前的.txt文件
find ~/test -type f -name "*.txt" -mtime +
在~/test目录下查找更改时间在5分钟以内的.txt文件
find ~/test -type f -name "*.txt" -mmin -
在~/test目录下查找修改时间在10分钟以前的文件
find ~/test -mmin +
注意点
- Linux的文件有三种时间类型,具体可看此文章:https://www.cnblogs.com/poloyy/p/12586677.html
- 无论是 -mtime + 还是 -mtime - ,第五天内修改过的文件都不会被搜索出来,可看下图
通过文件的大小来搜索
语法格式
-size n[cwbkMG]
那么它有什么类型大小单位呢?(官方直接给了答案)
b:512字节的块(默认),1b = 512c
c:bytes,指定字节大小
w:等价于两个bytes,1w=2c,一般用户匹配中文
k:平时常说的1kb,1k=1024c=2b
M:1MB,1M=1024k=2048b
G:1GB,1GB=1024MB=2048*1024b
在~/test目录下查找所有size=0字节的文件
find ~/test -size
在~/test目录下查找所有size<100k的文件
find ~/test -size -100k
在~/test目录下查找所有size>1MB的文件
find ~/test -size +1M
通过编程中的“与、或、非”来搜索
- -a:与,即&&(默认都是与)
- -o:或:即||
- -not:非,即条件结果取反
在~/test目录下查找文件大小在1kb和10kb内的所有文件
find ~/test -size +1k -size -10k
find ~/test -size +1k -a -size -10k
在~/test目录下查找大于1kb或类型为普通文件的文件
find ~/test -size +1k -o -type f
在~/test目录下查找非空文件
find ~/test -not -size
在~/test目录下查找文件或目录
find ~/test -type f -o -type d
搜索空文件
find ~/test -empty -type f
通过文件所属用户搜索
find ~/test -user root
通过文件所属组group搜索
find ~/test -group root
Linux常用命令 - find命令基础使用(重点)的更多相关文章
- ## 本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘
本篇文章对linux常用的一些命令做一下总结,如有需要补充以及不懂得地方,请在下方留言 适合于linux初学者,以及对命令掌握不牢的用来备忘一,磁盘管理1.显示当前目录位置 pwd2.切换目录 cd ...
- Linux 常用的压缩命令有 gzip 和 zip
Linux 常用的压缩命令有 gzip 和 zip,两种压缩包的结尾不同:zip 压缩的后文件是 *.zip ,而 gzip 压缩后的文件 *.gz 相应的解压缩命令则是 gunzip 和 unzip ...
- linux常用60条命令 转
Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命 ...
- linux常用的一些命令(不断增加中)
linux 下重启 apache: httpd -k restart 下面这些大多命令都可以在<鸟哥私房菜>的服务器中的“常用网络指令”和基础中的“程序与资源管理”中找到ps -aux 这 ...
- 入门学习Linux常用必会命令实例详解
Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正理解Linux系统, ...
- 网络编程学习笔记-linux常用的网络命令
网络参数设置命令 所有时刻如果你想要做好自己的网络参数设置,包括IP参数.路由参数和无线网络等,就得要了解下面这些相关的命令才行.其中Route及ip这两条命令是比较重要的.当然,比较早期的用法,我们 ...
- LINUX常用配置及命令
一. Fedora系统配置 1. [设置网卡IP] 步骤如下: 1) 用root用户登陆,打开/etc/sysconfig/network-scripts/ifcfg-eth0文 ...
- Java线上问题排查思路及Linux常用问题分析命令学习
前言 之前线上有过一两次OOM的问题,但是每次定位问题都有点手足无措的感觉,刚好利用星期天,以测试环境为模版来学习一下Linux常用的几个排查问题的命令. 也可以帮助自己在以后的工作中快速的排查线上问 ...
- linux常用20条命令
1.cd命令 这是一个非常基本,也是大家经常需要使用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径.如: cd /root/Docements # 切换到 ...
- linux常用配置文件和命令总结
常用配置文件说明: 1..设置-n永远生效:Vim的配置文件:命令模式想永久生效, ~/.vimrc,新建文件,在里面输入保存即可 2.设置别名永远生效:在~/.bashrc 修改当前用户家目录里的 ...
随机推荐
- Flex实现九宫格
写一个靠谱的flex布局 <!DOCTYPE html> <html> <style> .block { padding-top: 30%; margin-top: ...
- .NET Core 获取主机运行资源的库
简介 CZGL.SystemInfo 是一个支持 Windows 和 Linux 的资源信息获取库,用于获取系统环境.机器资源信息.系统资源使用情况. Nuget 搜索 CZGL.SystemInfo ...
- 前端AES加密解密
最开始使用的aes-js的npm包,后来发现npm上面那个包只能加密16个长度的字节,非16个长度的字符串就会报错,后来使用的是crypto-js, AES总共有四种加密方式,我们使用的CBC方式: ...
- 进程,线程,Event Loop(事件循环),Web Worker
线程,是程序执行流的最小单位.线程可与同属一个进程的其他线程共享所拥有的全部资源,同一进程中的多个线程之间可以并发执行.线程有就绪,阻塞,运行三种基本状态. 阮一峰大神针对进程和线程的类比,很是形象: ...
- Promise,Generator,Await/Async
上节中忘记讲:Iterator接口和Generator函数的关系了,Symbol.iterator方法的最简单的实现就是通过Generator函数: let myIterable = { [Symbo ...
- Go语言:如何解决读取不到相对路径配置文件问题
背景 项目交叉编译为可执行文件之后,在其他目录执行文件时提示找不到配置文件 2020/03/14 20:44:23 配置文件读取失败 open config.ini: no such file or ...
- Flutter json 2 model with Built Value
Flutter json 2 model with Built Value Flutter中json转换model, 除了手动转之外, 就是利用第三方库做一些代码生成. 流行的库有: json_ser ...
- Tries前缀树
Trie,来源于(retrieval,取回,数据检索),是一种多叉树,用来存储字母表上的单词非常有用. Trie经常用来存储动态集合(dynamic set)或者关联数组(associative ar ...
- C++ 随机函数/伪随机函数
使用rand()函数时,每次随机数都是固定(伪随机数),在前面加上以下函数,每次生成的随机数为随机, srand((int)time(NULL)); rand();
- 手把手教你用Abp vnext构建API接口服务
ABP是一个开源应用程序框架,该项目是ASP.NET Boilerplate Web应用程序框架的下一代,专注于基于ASP.NET Core的Web应用程序开发,也支持开发控制台应用程序. 官方网站: ...