2.23 find命令(上)
查看文件在哪里,除了find,还有which ,环境变量echo $PATH,
whereis ,还有locate,
locate安装方法:yum install –y mlocate
![](https://i-blog.csdnimg.cn/blog_migrate/a0dedd5c07df658c682140ba12ec5c93.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8916f8d1328bc27636601dbeb958ea33.png)
手动生成数据库:updatedb
![](https://i-blog.csdnimg.cn/blog_migrate/108cff8d0d10576ca115e4b1b09dff87.png)
![](https://i-blog.csdnimg.cn/blog_migrate/fa15ce0d181b4911fff30558a8e28948.png)
快捷键总结:ctrl L清屏
ctrl d退出终端,相当于exit或者log out
ctrl c终止
ctrl u删除前面的内容
ctrl e,把光标移到最后面,表示end
ctrl a 把光标移到最前面,和ctrl e相反
find搜索:find /etc -name “sshd_config”
模糊搜索*:find /etc -name “sshd*”
![](https://i-blog.csdnimg.cn/blog_migrate/d570018c2446e420b723bf17f9d99a49.png)
指定搜索结果是文件或者目录,-type d或者-type f,指定文件类型eg软链接文件l,socket文件s,字符串设备c,以及b文件
![](https://i-blog.csdnimg.cn/blog_migrate/ee9200bd32450f3b2a3442def506534f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a94da2846a6b2987430020bf357c3145.png)
eg:查看dev下是否有b文件
![](https://i-blog.csdnimg.cn/blog_migrate/efbccd9e68bb42688a0c898b2fe07105.png)
2.24 find命令(中)
stat查看文件具体信息
,比如文件名,大小,块,设备,硬链接,inode号,权限等
最近访问是atime
最近更改指的是更改的内容,即mtime
最近改动指的是inode相关的,权限文件名,时间之类的,是ctime
![](https://i-blog.csdnimg.cn/blog_migrate/4af71cbc63286ba6d99727a8d6ddf2d8.png)
切换成英文LANG=en
![](https://i-blog.csdnimg.cn/blog_migrate/1563ed7f86d17016e627f796eb87d25f.png)
给文件2.txt追加一行,内容是:121212:echo “121212” >> 2.txt”
改动的是modify,ctime也会相应变化
![](https://i-blog.csdnimg.cn/blog_migrate/3594e803312950e0fe18a65b6c673023.png)
cat查看一下文件内容,atime会发生变化
![](https://i-blog.csdnimg.cn/blog_migrate/81ea967733a77e42771bfdde56f0fbb7.png)
查找根下,一天之类 –i改动的文件(一天之外发生的,+i)
find / -type f -mtime -1
![](https://i-blog.csdnimg.cn/blog_migrate/0146dadfe83e1cf811226fe7b760bbc3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0418b238c8b7793693a24b5c8fe8501d.png)
缩小范围至/etc下
find /etc -type f –mitime -1
![](https://i-blog.csdnimg.cn/blog_migrate/ed9ce213cf364e7049055a728440baf5.png)
除此之外,还可以查看atime,ctime
find /etc -type f -ctime +1
可以加多个限制条件,属于并列关系,
同时满足
eg:find /etc -type f -mtime +1 -name “*.cfg”
![](https://i-blog.csdnimg.cn/blog_migrate/d2eabd88e16c48f936e98893d24fc6f8.png)
-o 是或者的关系
eg:find /etc -type f -o -mtime +1 -o -name “*.cfg”
2.25find命令(下)
硬链接的文件不容易找到,这边会体现find的另外一个用法
给文件1_head.txt创建硬链接放到/tmp下,取名1.txt.bak,此时和文件1_heard.txt使用相同inode号的文件数目变成了2
![](https://i-blog.csdnimg.cn/blog_migrate/8268b4a6b1ba8e2e063343c177ac8c72.png)
ls -i 1_heard.txt //查看到1_heard.txt的inode号为33583266
查看和1_heard.txt使用相同inode号的文件
find / –inum 33583266
![](https://i-blog.csdnimg.cn/blog_migrate/0b86fac8f23279be1570d16879bf9dc0.png)
find /root -type f
-mmin
-60 //搜索/root下,一小时之内改动过的文件
![](https://i-blog.csdnimg.cn/blog_migrate/1fff326341860eed1995992e72c40b55.png)
![](https://i-blog.csdnimg.cn/blog_migrate/60bb0f61e210cb4100ee7b7aaee92f6b.png)
查询过程中,显示详情
eg:find /root -type f -mmin 400 -exec ls -l {} \;
![](https://i-blog.csdnimg.cn/blog_migrate/0168cda9c48befd88f8ecc0241f6c944.png)
![](https://i-blog.csdnimg.cn/blog_migrate/7f240e901c263ae0054f2a26de729a87.png)
改名为.bak
find /root -type f -mmin -700 -exec mv {} {}.bak \;
![](https://i-blog.csdnimg.cn/blog_migrate/f2e378be76687d036ab14f03a4fb3d8a.png)
find /root -size +10k
find /root -size +10k //查找文件大小大于10k的,和小于10k
![](https://i-blog.csdnimg.cn/blog_migrate/ede0e46f0b17ba6a6eafb1c70557b813.png)
find过程中查看大小小于10k的文件的详情,eg:find /root –type f -size -10k -exec ls -lh {} \;
![](https://i-blog.csdnimg.cn/blog_migrate/72bd942b8f9b4b0afaf9ec06589d3b37.png)
若是10兆,则
M要大写
,即10M,否则会报错
总结:
find常用的用法:-type -size -mtime -mmin -exec -o -name
2.26文件名后缀
在linux中的命令是区分大小写的。文件的后缀名不太严谨,可以自定义,并不能代表文件类型。默认约定.conf是配置文件
date //显示系统时间
LANG en //改变语言,显示为英文
![](https://i-blog.csdnimg.cn/blog_migrate/d8cb7e7c20f1b0afc405f67f80ae0b92.png)
进入另外一个终端
echo $LANG //查看到默认显示zh_cn UTF.8
![](https://i-blog.csdnimg.cn/blog_migrate/dc620191254c95ccef4221ca6ea9a0bd.png)
language这个变量LANG en 就是设置为英文,若是设置为中文,前提是得支持中文,我们在安装centos 7之初,就设置了简体中文