博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux学习-0918
阅读量:6905 次
发布时间:2019-06-27

本文共 2716 字,大约阅读时间需要 9 分钟。

hot3.png

2.23find(上)

2.24find(中)

2.25find(下)

2.26文件名后缀

 

 

一、find 查找文件

    linux中有很多查找的命令,比如说: which、whereis、locate 。这些都不常用,用的最多是find命令。

    顺便记录命令行几个常用快捷键:

    ctrl + l :清屏

    ctrl +d :退出终端,类似 exit  logout命令

    ctrl +d :命令行有字符时,ctrl+d是往后一个个删除字符

    ctrl + u:删除光标前面的

    ctrl +a: 光标移动最前面

    ctrl+e:光标移动到最后面

  

    find命令是用来查找文件。

    用法:find 路径  -type 文件名

    示例:

    查找etc目录下的名字为"ssh_config"的文件

[root@wxy03 ~]# find /etc/  -name  "ssh_config"/etc/ssh/ssh_config

    不太记得文件名了,也可以模糊查询文件

[root@wxy03 ~]# find /etc/  -name  "ssh*"/etc/ssh/etc/ssh/ssh_config/etc/ssh/ssh_host_ed25519_key.pub/etc/ssh/ssh_host_ecdsa_key.pub

    也可以只查找目录,-type就是指定查找类型,d就是指目录的意思。同理如果需要查找其它类型的文件就可以-tyep 加上想要查找的文件类型就可以了,比如说:f 就是文件类型,s 是socket文件等等。

[root@wxy03 ~]# find /etc/  -type d -name  "ssh*"/etc/ssh/etc/selinux/targeted/active/modules/100/ssh[root@wxy03 ~]#

 

    find按修改时间进行查找:

    linux的文件有三个时间,可以使用stat命令来查看一下:

[root@wxy03 home]# stat  3.txt   File: ‘3.txt’  Size: 68        	Blocks: 8          IO Block: 4096   regular fileDevice: fd01h/64769d	Inode: 73732       Links: 4Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)Access: 2018-09-17 23:21:01.419307695 +0800Modify: 2018-09-17 23:21:01.419307695 +0800Change: 2018-09-17 23:27:37.947371616 +0800 Birth: -[root@wxy03 home]#

Access:是文件最后的访问时间

Modify:文件的最后一次修改时间

Change:文件状态最后一次修改时间。比如权限修改 、mv等。change状态会收到modify的影响。

find 可以根据这个三个时间进行查找,他们分别是 -atime -mtime -ctime

示例:

 查找home目录下一天内修改过的文件,-mtime  -1  这个-1就是一天内的意思,如果要查找一天前修改过的改成+1就可以了。  

[root@wxy03 home]# find /home/ -type f -mtime  -1/home/3.txt/home/2.txt/home/1.txt[root@wxy03 home]#

同理如果要查找一天以内查看过的文件把mtime改为atime,查找一天以内修改过权限或者移动过的文件mtime改为ctime即可。

以上三个时间只能以天为单位进行查找,find还有一个参数可以按分钟进行查找:

查找120分钟内修改过的文件,-mmIn 120就是120分钟内的,如果想要查找60分钟内的把120改成60即可

[root@wxy03 home]# find / -type f -mmin 120 /var/lib/rpm/__db.003/var/lib/rpm/__db.001/var/lib/rpm/__db.002/var/cache/yum/x86_64/7/timedhosts

find还支持or条件,加上-o参数,比如:查找一天以内修改或者文件名中包含“ssh”的:find /etc/  -type f -o -mtime -1  -o -name "ssh*"

find exec用法:

 exec可以把find查到的内容当做后面命令的参数,如把查找到文件统一修改文件名:

[root@wxy03 home]# find  /tmp/ -type f -name "*.txt"/tmp/3.txt/tmp/2.txt/tmp/1.txt[root@wxy03 home]# find /tmp/ -type f   -name  "*.txt" -exec  mv  {} {}.bak \;[root@wxy03 home]# find  /tmp/ -type f -name "*.bak"/tmp/2.txt.bak/tmp/1.txt.bak/tmp/3.txt.bak

注意:使用exec 需要以 ";"结尾,并要使用"\"脱意

 

  • 指定某个时间段进行查找

         find . -newermt '2018-11-18 15:00' ! -newermt '2018-11-18 23:59'

 

find按文件大小进行查找:

find还可以根据文件大小进行查找,用法:find -size<文件大小>  

示例:

 查找10k以上的文件:

find /etc/ -type f -size +10k

查找10M以上的文件:

find /etc/ -type f -size +10M

size的文件大小格式:

  • b —— 块(512字节)
  • c —— 字节
  •  —— 字(2字节)
  • k —— 千字节
  • M —— 兆字节
  • G —— 吉字节

 

二、文件后缀

    linux系统中文件后缀其实是没什么用的,但是为了便于区分,我们习惯在定义一个文件类型的时加一个后缀名,这可以快速分辨文件类型。

    常用的文件后缀有:

    .sh :脚本文件

    .txt:文本文件

    .gz /.tar :压缩文件

    .cnf:配置文件

转载于:https://my.oschina.net/u/3755326/blog/2054744

你可能感兴趣的文章
马化腾IT领袖峰会力推,微信小程序即将迎来爆发拐点
查看>>
javascript js 判断页面是否加载完成
查看>>
【机器学习算法-python实现】决策树-Decision tree(1) 信息熵划分数据集
查看>>
最新的goldengate monitor 12.1.3已经发布
查看>>
ASP.NET防止用户多次登录的方法
查看>>
2D多边形碰撞器优化器
查看>>
webBrowser 模拟登录
查看>>
idea 配置多个tomcat
查看>>
weblogic 整合cxf 报错:cannot create a secure XmlInputFactory
查看>>
Nancy 返回值详解
查看>>
架构思维案例:速学正则
查看>>
记录一则FGA审计“A用户对B用户某张表的更新操作”需求
查看>>
IntelliJ IDEA优秀插件(编程通用)
查看>>
API返回错误信息的最佳实践
查看>>
AngularJS实现三级Table列表
查看>>
scala sortBy and sortWith
查看>>
请求合并哪家强
查看>>
nodejs检查已安装模块
查看>>
solr联合多个字段进行检索(multivalued和copyfield的使用)
查看>>
准备PPT过程中的一些文档记录
查看>>