开头总结:

学习了Linux中的文件搜索命令find和locate,系统搜索命令whereis 和which ,字符串搜索命令grep,find和locate的差别和使用方法格式,什么是path环境变量以及其优点,whereis和which的使用方法,差别在于查询系统命令内容的不同,grep和find的差别。为什么要引入通配符?
什么情况下用通配符还是正則表達式?

Locate文件搜索命令:

1)格式:

Locate [文件名称]

2)更新数据库

updatedb

优点:

相对于find命令来说。Locate耗费资源比較少。搜索速度快。

原理:

locate搜索文件名称是在指定的后台数据库下搜索,通常是/var/lib/mlocate文件夹下,可是数据库是一天一次更新,所以你今天新建的文件。用locate找不到。可是能够updatedb命令强制更新,就能够找到了。

而find命令是在文件系统上总体遍历。所以速度比較慢,耗费资源大。

命令搜索命令 whereis 和which(两者非常像)

:仅仅能搜索系统命令

1)

比如:whereis ls

显示的是ls的位置和ls的帮助文档的位置。

2)

加了-b以后 就是仅仅看ls的位置 不看帮助文档的位置

Whereis -b ls

3)

加了-m以后 仅仅看帮助文档的位置 不看Ls的位置

Where -m ls

Which 看到命令的位置和别名(也有例外)  看不到命令的帮助文档。

4)什么是path环境变量?

就是定义的系统命令搜索的路径。

这种优点?

输入命令。就不用在指定其所在的绝对路径。以后写好的脚本命令。就能够放在path中,直接用。

Path中定义了路径。(手工就不用在输入据对路径了,由于在path中配置了)在打ls时 会在这些路径中找,找到了会运行其命令的功能,找不到会显示找不到的信息,Command not found。

Find命令(很强大的命令):

1)格式

find [搜索范围][搜索条件]

在根文件夹下 搜索名字为install.log的文件。(耗费资源比較大 由于在个文件夹下搜索)

2)通配符     什么是通配符?

为了进行模糊查询而诞生的符号

*   匹配随意内容

?   匹配随意一个字符

[]   匹配随意一个中括号内的字符

匹配install.log后面随意字符的文件和匹配全部文件

匹配 全部前面随意以g结尾的文件

3)不区分大写和小写进行匹配

Find  /root -iname install.log

注意一点: find是进行的全然匹配 就是查找的和原文件必须是一个名字,假设要进行模糊查询,那么就要用到通配符。

4)全部者文件和垃圾文件

一般的。我们把没有全部者的文件成为垃圾文件。须要手工清除。

用到命令:

Find /root -nouser(经常使用)

可是内核产生和外来的(u盘)文件除外。

5)按文件大小进行查找

find  /root  -size 25k

找等于25k的文件

Find /root  -size +25k

找大于25K的文件

Find /root  -size -25k

找小于25k的文件

6)按文件的节点序号查询

Find -inode 26543

寻找节点为26543的文件。

7)扩展

Find /root -size +20k -a -size --50k

-a是逻辑与  找大于20k而且小于50k文件。

Find /root -size +20k -a -size -50k -exec ls lh {}\;

将找到的文件的具体结果显现出来

标准格式:

-exec  [命令]  {}\;

Grep字符串搜索命令:(包括匹配)

1)  grep [选项] 字符串  要查找文件

2)  加-v 是查找不包括字符串的文件的内容

3)  加-i  是不区分大写和小写

Grep和find的差别:

1)Find命令在系统其中搜索符合条件的文件。而grep命令在文件里搜索与字符串符合的内容;

2)find命令要想匹配,须要用通配符。通配符是全然匹配。

Grep使用正則表達式进行匹配,是包括匹配。

3)什么时候用通配符还是正則表達式?

假设匹配是文件的名称。那么就用通配符。假设搜索的是文件的内容,那么就应该用正則表達式。

Linux学习日志--文件搜索命令的更多相关文章

  1. 五、Linux学习之文件搜索命令

    一.文件搜索命令locate locate 文件名 在后台数据库中按文件名搜索,搜索速度最快 /var/lib/mlocate #locate命令所搜索的后台数据库(数据库不会实时刷新,所以新建的文件 ...

  2. Linux学习之文件搜索命令

    一.文件搜索命令locate locate 文件名 在后台数据库中按文件名搜索,搜索速度最快 /var/lib/mlocate #locate命令所搜索的后台数据库(数据库不会实时刷新,所以新建的文件 ...

  3. Linux 学习 (三) 文件搜索命令

    Linux达人养成计划 I 学习笔记 locate 文件名 搜索速度比较快 只能根据文件名搜索 搜索的是保存在 /var/lib/mlocate 的数据库(每天更新一次) 新建文件需要执行 updat ...

  4. [转]linux查看日志文件内容命令

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  5. linux查看日志文件内容命令tail、cat、tac、head、echo

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  6. 【Linux】linux查看日志文件内容命令tail、cat、tac、head、echo

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  7. linux查看日志文件内容命令tail、cat、tac、head、echo、vi

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  8. linux查看日志文件内容命令tail、cat、tac、head、echo详解

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  9. Linux常用命令学习2---(文件搜索命令locate find、命令搜索命令whereis which、字符串搜索命令grep、帮助命令man)

     1.文件搜索命令:locate [文件名]    在后台数据库中按文件名搜索,搜索速度比find快,耗费资源更少    例子:locate test.txt,就会显示文件名包含 test.txt的所 ...

随机推荐

  1. (转)淘淘商城系列——SSM框架整合之逆向工程

    http://blog.csdn.net/yerenyuan_pku/article/details/72758590 我们知道在开发中有些工作是非常耗时但是又没有什么技术含量的,比如创建mapper ...

  2. [bzoj4816][Sdoi2017]数字表格 (反演+逆元)

    (真不想做莫比乌斯了) 首先根据题意写出式子 ∏(i=1~n)∏(j=1~m)f[gcd(i,j)] 很明显的f可以预处理出来,解决 根据套路分析,我们可以先枚举gcd(i,j)==d ∏(d=1~n ...

  3. CAD参数绘制直线(com接口)

    用户可以在CAD控件视区任意位置绘制直线. 主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE ...

  4. Solaris 默认Shell 修改

    ssh登陆远程的solaris 10,backspace出现乱码. ssh登陆远程的solaris 10默认Shell不是bash 把solaris10的shell环境改为bash就行 dev13% ...

  5. bootstrap-table的一些基本使用及表内编辑的实现

    最近工作需要接触了bootstrap-table 所以研究了一下,并做了笔记,红色位置要特别注意 前端主要使用了 jquery bootstrap-table  bootstrap-edittable ...

  6. 尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框

    尝试用React写几个通用组件 - 带搜索功能的下拉列表,开关切换按钮,弹出框 近期正在逐步摸索学习React的用法,尝试着写几个通用型的组件,整体项目还是根据webpack+react+css-me ...

  7. Hihocoder #1938 最大权闭合子图模板

    这里的讲解很不错,适合作为入坑题: Hihocoder#1938 代码: #include<algorithm> #include<iostream> #include< ...

  8. [bzoj2806][Ctsc2012]Cheat(后缀自动机(SAM)+二分答案+单调队列优化dp)

    偷懒直接把bzoj的网页内容ctrlcv过来了 2806: [Ctsc2012]Cheat Time Limit: 20 Sec  Memory Limit: 256 MBSubmit: 1943   ...

  9. Jdk动态代理和CGLIB动态代理大比拼

    前言: 这2种动态代理算是老生常谈的吧,面试还是会经常问到的,下面做下分析: jdk动态代理: import java.lang.reflect.InvocationHandler; import j ...

  10. squid正向代理使用

     环境: Squid Cache: Version 3.5.20 操作系统: centos7.6 squid安装配置 yum install -y squid systemctl  start  sq ...