10 Linux ——文件搜索命令

文件搜索命令find

不管在Windows还是Linux中都尽量少用搜索,自己做好文件归纳放置,搜索会占用大量系统资源
在这里插入图片描述

在这里插入图片描述

-name:根据文件名来搜索

如果想要全盘搜索就把第一行命令写成根目录就行:

find / -name init

在这里插入图片描述

Windows只要文件中包含init这四个字都会被 搜索出来 ,而Linux是精准搜索,由上图可知,文件名必须是init,多一个字符都不行。

如果在Linux中想像Windows这样模糊搜索,只要含有init的文件都被搜索出来,在init前后加*,如下图
在这里插入图片描述

同理

find /etc -name init*   //表示查找所有以init开头的文件,
find /etc -name init???  //表示init开头且后面有三个字符的文件

在这里插入图片描述
注意:在Linux中严格区分大小写,如果创建一个文件叫INITTAB,然后
find /etc -name init??? 是不会被搜到的,如下图
如果想要不区分大小写,可以用-iname,如下图
在这里插入图片描述

备注:不要再服务器使用高峰期的时候使用find,非常耗资源。

根据文件大小查找

Linux中用数据块作为存储文件最小单位,2数据块=1KB
在这里插入图片描述
在这里插入图片描述
上图就是查找大于100MB的文件

下图为根据所有者和所属组查找
在这里插入图片描述
——————————————————————————————

在这里插入图片描述
+表示超过多长时间
-表示多长时间之内

文件属性概念如下图
在这里插入图片描述
打开一个文档,在文档里增删改代表文件内容被改变
——————————————————————————

在这里插入图片描述

在这里插入图片描述
下例子:查找etc目录下init开头的文件(去除目录)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
-OK与-exec的区别就是-ok会一个个问你yes or no
如下图
在这里插入图片描述

ls -i 查到每个文件i节点
.表示当前目录

find . 表示在当前目录下查找

根据i节点找出文件来删除最方便,不用在意那些格式,如下图

尤其一些很特殊的文件,名字奇形怪状,适合用i节点查找出来删除
在这里插入图片描述
PS:怎么知道一个文件有没有硬链接? 只要看这个文件i节点,然后在整个它所在的分区里面(硬链接无法跨分区)做一个搜索,找i节点是自己指定数字的文件,硬链接就找到了。硬链接i节点和本身文件一样

其他文件搜索命令

在Windows中的wox&everything利用NTFS特性的记录日志搜索速度非常快,几乎可以达到秒搜,但是Linux中find的搜索速度并不快,因为find是靠遍历搜索,如遍历整个分区/目录,故引入快速搜索locate,locate原理不是如此,它不是在硬盘上找,而是在资料库中找需要的文件
在这里插入图片描述

如果想要知道locate检索的文件资料库在哪儿,使用命令

locate locate

下面的白色横线哪一行就是资料库,定期更新
在这里插入图片描述

在这里插入图片描述
由上图可以知道,刚刚创建一个文件locate找不着,因为还没有更新资料库,这就是locate最大的问题

不过可以手动更新如下图

在这里插入图片描述

但是如果要找的文件存放在临时目录,更新不了。如下图
在这里插入图片描述

locate -i

就可以不区分大小写

在这里插入图片描述

——————————————————————————

在这里插入图片描述
在这里插入图片描述
———————————————————————————————

在这里插入图片描述

在这里插入图片描述

grep是在文件内容里做一个查找,找某个字符串或者关键词所在位置
如下图,用more会查文件,这个文件会比较长,有很多行,但自己只想看跟自己信息相关的行,用grep
在这里插入图片描述

grep可以用-i来不区分大小写,如下图
在这里插入图片描述
在这里插入图片描述
如上图,Linux的配置文件或者shell脚本里面,#都是表示注释的意思。
#开始的行都是注释行

在这里插入图片描述

如上图:-v是排除指定字符串,^#的意思是以#开头的行,此命令的意思是排除以#开头的行,只看有效行

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值