【linux】循序渐进学运维-find
find命令的使用
find [目录] [条件] [动作]
[目录]
不输入代表当前目录
例:
find
find /boot
[条件]
用户和组:-user -group
例:查找home目录下所有的属于指定的文件
[root@xinsz0861 ~]# find /home/ -user swk
类型:-type ( f 文件 , d 目录 , l 连接 , p 管道 ,c 字符文件 ,b 块文件 ,s socket文件 )
[root@xinsz0861 ~]# find /home/ -type f[root@xinsz0861 ~]# find /home/ -type d
文件名:-name
[root@xinsz0861 ~]# useradd user1[root@xinsz0861 ~]# useradd vipuser2[root@xinsz0861 ~]# touch /home/user1/aaauserccc[root@xinsz0861 ~]# find /home/ -name *user*/home/user1/home/user1/aaauserccc/home/vipuser2
大小:-size +NM 大于N兆 -NM 小于N兆
例:找到boot目录下大于4M文件
[root@xinsz0861 ~]# find /boot/ -size +4M
时间: -mtime -atime -ctime
任务:百度一下如何针对分钟进行查找
扩展:Linux系统中ctime , atime ,mtime 有什么区别
[root@xinsz0861 ~]# touch a.txt
[root@xinsz0861 ~]# stat a.txtFile: ‘a.txt’Size: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: fd00h/64768d Inode: 36433014 Links: 1Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)Access: 2016-02-20 07:55:13.285056713 -0500Modify: 2016-02-20 07:55:13.285056713 -0500Change: 2016-02-20 07:55:13.285056713 -0500
ctime:“改变时间(change time)”
mtime :“修改时间(modification time)”
atime :“访问时间(access time)”
例:
改变和修改之间的区别在于是改文件的属性还是更改它的内容。
chmod a-w myfile,那么这是一个改变;改变的ctime
echo aaa > bajie 那么这是一个修改。mtime :“修改时间
atime,改变是文件的索引节点发生了改变;mtime 修改是文本本身的内容发生了变化。
总结:当文件的属性发生修改时,ctime
当文件内容发生修改时,mtime,ctime
当文件被访问时,atime
[root@xinsz0861 ~]# touch a.txt
[root@xinsz0861 ~]# chmod +x a.txt #ctime发生改变
[root@xinsz0861 ~]# echo aaa > a.txt #mtime ,ctime发生改变
[root@xinsz0861 ~]# cat a.txt #atime发生改变
ls(1) 命令可用来列出文件的 atime、ctime 和 mtime。
ls -lc filename 列出文件的 ctime ll -c
ls -lu filename 列出文件的 atime ll -u
ls -l filename 列出文件的 mtime ll
[root@xinsz0861 ~]# date -s 2016-2-23
Tue Feb 23 00:00:00 EST 2016
[root@xinsz0861 ~]# find /root/ -mtime +1 | grep a.txt
注:查找出root目录48小时之前创建的文件
[root@xinsz0861 ~]# find /root/ -mtime 2 | grep a.txt
注:查找出root目录48小时之前创建的文件
[root@xinsz0861 ~]# find /root/ -mtime -3 | grep a.txt
注:查找root目录下72小时之内创建的文件
权限:-perm
[root@xinsz0861 ~]# find /boot/ -perm 755 #等于0775权限的文件或目录
SUID 4,SGID 2 ,sticky 1
[root@xinsz0861 ~]# find /tmp/ -perm -777 #至少有777权限的文件或目录
辛舒展
操作方便才是硬道理
例:
[root@xinsz0861 ~]# mkdir ccc[root@xinsz0861 ~]# chmod 777 ccc[root@xinsz0861 ~]# mkdir test[root@xinsz0861 ~]# chmod 1777 test/[root@xinsz0861 ~]# touch b.sh[root@xinsz0861 ~]# chmod 4777 b.sh[root@xinsz0861 ~]# find /root/ -perm 777/root/ccc[root@xinsz0861 ~]# find /root/ -perm 1777/root/test[root@xinsz0861 ~]# find /root/ -perm 4777/root/b.sh[root@xinsz0861 ~]# find /root/ -perm -777/root/ccc/root/test/root/b.sh
查找的目录深度:
[root@xinsz0861 ~]# find /boot/ -maxdepth 2
#只查找目录第二层的文件和目录
多条件:
-a -o ! 或 -and -or -not
[root@xinsz0861 ~]# find /boot/ -size +4M -a -size -8M
注:找出来boot目录下文件大小在4~8M之间的文件或目录
[root@xinsz0861 ~]# find -type f -a -perm /o+w
./b.sh
[root@xinsz0861 ~]# find ! -type f -a -perm -001
[动作]
-ls
-ok
-exec
xargs
-printf
[root@xinsz0861 ~]# touch test[root@xinsz0861 ~]# cp /etc/passwd test/[root@xinsz0861 ~]# cp -r /boot/ test/[root@xinsz0861 ~]# find /root/test/ -type f -exec rm {} \;或者:[root@xinsz0861 ~]# find /root/test/ -type f | xargs rm -rf
参数解释:
-exec 执行命令
rm 要执行的命令
{} 表示find -type f 查找出来了文件内容
\; {} 和 \;之间要有空格。 固定语法,就是以这个结尾
作者:互联网老辛
互联网编程手艺人,架构师,一个技术极客,一个布道者;高中起就有一个做讲师的梦想,工作十余载,终于有幸成为云计算讲师,持续钻研云计算和信息安全领域,并继续把自己所学所感真心传授给自己的学员,帮助更多想要进入IT行业的小伙伴。传道授业解惑,深知责任重大,每日战战兢兢,如履薄冰。苦心钻研,一直前行,不敢有丝毫懈怠。
【linux】循序渐进学运维-find相关推荐
- [linux]循序渐进学运维-基础命令篇-diff
写在前面: 博主是一名投身教培事业的标准八零后,叛逆而且追求自由,昵称取自于苏轼的<水调歌头>中的"高处不胜寒",时刻提醒自己要耐得住寂寞,受的了孤独,在技术的道路上, ...
- [linux]循序渐进学运维-基础命令篇-文件的归档和压缩
文章目录 1 . tar: 作用打包压缩文件 1) 把当前的路径下的文件打包,命名为loacl.tar 2) 指定解压位置 -C 3) 不解包查看tar包中的内容 2. tar 归档+压缩 1.创建t ...
- [linux] 循序渐进学运维-mv
文章目录 mv命令介绍 功能: 案例: 1. -b 如果要拷贝过去的文件夹下有目标文件,则加~ 2. -f 强制覆盖 3. -i:默认选项,当目标文件存在时,提示是否覆盖 4. -n 如果文件存在则不 ...
- 《循序渐进学运维》第一阶段Linux基础
前言 循序渐进学运维系列,第一阶段的内容已经全部更新完毕.包含学习方法篇,和基础入门课程. 所有内容均在csdn存档. 想要学习的可以按照这个步骤进行学习,有不完善的地方欢迎在留言区留言,一起交流. ...
- 【Linux】循序渐进学运维-day01
第一天的内容主要包含: 前言,学习方法,系统搭建,实验环境配置 [Linux]循序渐进学运维-前言 [Linux]循序渐进学运维-学习方法篇 [Linux]循序渐进学运维-实验环境搭建 [Linux] ...
- fdisk 分区_【linux】循序渐进学运维-基础篇-分区命令fdisk
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第47篇文章. 本文我们来讨论一下fdisk命令的使用,使用fdisk可以做分区管理. 1. 命令概述: fdisk 作用: 磁盘分区 ...
- 【linux】循序渐进学运维-基础篇-文件的软硬链接
文章目录 前言 软硬链接的介绍 1. 硬链接 2. 软连接 案例实战 1) 硬链接原文件删除不会影响链接文件的正常使用 2) 硬链接不能跨分区进行创建 3) 创建软连接,测试删除原文件后,软连接是否还 ...
- 【linux】循序渐进学运维-基础篇-linux运维级别
本文是循序渐进学运维-基础篇系列的第43篇文章 文章目录 Linux的运行级别 运行级别的启动原理 1. 在目录/etc/rc.d/init.d下有许多服务器脚本程序,一般称为服务(service) ...
- 【linux】循序渐进学运维-基础篇-修复文件系统实战
文章目录 前言: 实验环境 解决方案 1) 系统出现只读的情况的解决方案 2) 系统文件受损,可以使用fsck命令 a. 创建一个1G的分区 b. 对分区进行格式化 c. 破坏文件系统并重新挂载 d. ...
- 【linux】循序渐进学运维-基础篇-netstat命令详解
大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第62篇文章 文章目录 前言 一. netstat命令详解 作用 1. 常用参数 2. 命令使用 1) 参数作用详解 2) 网络连接状 ...
最新文章
- 1499抢飞天茅台?可惜了,才26万的并发app就崩了!
- 为什么linux进程名匹配最多只支持15个字符?
- java线上排查利器arthas
- boost::math::non_central_chi_squared用法的测试程序
- MongoDB数据库使用总结
- 机器学习之五:神经网络、反向传播算法推导
- “通用卷无法停止”解决方法
- Psych101(part3)--Day3
- 胖子脸:库珀·布莱克100年
- 实例61:python
- 【牛客刷题记录】2021-03-10
- 人工智障学习笔记——深度学习(2)卷积神经网络
- TRUNCATE TABLE 与 DELETE在删除整个表的所有记录时的区别
- Qt 实现控件抖动 动画窗口抖动 QQ抖动
- 强行结束进程命令ntsd
- MDUI中Select初始化问题
- mysql导出文件名乱码_快速解决mysql导出scv文件乱码、蹿行的问题
- 使用subs和evals函数对sympy中的符号进行赋值并且设置数值位数
- matplotlib添加行列标题、axes.axis以及axes.xaxis.set_ticklabels相关使用方法
- 微信服务器 系统发生错误,微信系统故障 仍未修复