Linux学习日志--文件搜索命令
开头总结:
学习了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学习日志--文件搜索命令的更多相关文章
- 五、Linux学习之文件搜索命令
一.文件搜索命令locate locate 文件名 在后台数据库中按文件名搜索,搜索速度最快 /var/lib/mlocate #locate命令所搜索的后台数据库(数据库不会实时刷新,所以新建的文件 ...
- Linux学习之文件搜索命令
一.文件搜索命令locate locate 文件名 在后台数据库中按文件名搜索,搜索速度最快 /var/lib/mlocate #locate命令所搜索的后台数据库(数据库不会实时刷新,所以新建的文件 ...
- Linux 学习 (三) 文件搜索命令
Linux达人养成计划 I 学习笔记 locate 文件名 搜索速度比较快 只能根据文件名搜索 搜索的是保存在 /var/lib/mlocate 的数据库(每天更新一次) 新建文件需要执行 updat ...
- [转]linux查看日志文件内容命令
linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...
- linux查看日志文件内容命令tail、cat、tac、head、echo
linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...
- 【Linux】linux查看日志文件内容命令tail、cat、tac、head、echo
linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...
- linux查看日志文件内容命令tail、cat、tac、head、echo、vi
linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...
- linux查看日志文件内容命令tail、cat、tac、head、echo详解
linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...
- Linux常用命令学习2---(文件搜索命令locate find、命令搜索命令whereis which、字符串搜索命令grep、帮助命令man)
1.文件搜索命令:locate [文件名] 在后台数据库中按文件名搜索,搜索速度比find快,耗费资源更少 例子:locate test.txt,就会显示文件名包含 test.txt的所 ...
随机推荐
- 迅为i.MX6UL核心板ARMCortex-A7单核NXP飞思卡尔工控行业Imx6核心板
iMX6UL核心板小巧精致,尺寸仅38mm*42mm:CPU型号iMX6UL@ 528MHz ARM Cortex-A7架构 :内存:512M DDR :存储:8G EMMC,低功耗,性能强大,性价比 ...
- cf536d——优先队列的运用
题目 题目:Lunar New Year and a Wander 题目大意:给定一个n个顶点(编号1~n).m条边的图,求从顶点1出发的字典序最小的路径(途径的边可重复). 思路 使用一个优先队列就 ...
- ssd遇到的bug
从训练一开始就loss为0: 最开始以为是在生成train.lmdb前没有对label_map进行修改,发现并不是这个问题 1.训练的命令是:python ./examples/ssd/ssd_pas ...
- Vue+Bootstrap实现购物车程序(3)
效果展示:(说明:使用webpack重构购物车程序,使用vue-cli生成项目脚手架) 文件结构: 代码: (1)将原来编写的btn-grp组件单独编写到BtnGrp.vue文件中 可以看到现在代码清 ...
- ansible中yaml语法应用
4.yaml语法应用 ansible的playbook编写是yaml语言编写,掌握yaml语法是编写playbook的必要条件,格式要求和Python相似,具体教程参考如下 yaml语言教程 附上一个 ...
- phphstrom改变项目中文件排列方式
1.View>Tool Win dows>Project 效果图: 2.File->settings (Ctrl+Alt+S)-> Editor->General-> ...
- vim跳转(一)
参考资料:http://easwy.com/blog/archives/advanced-vim-skills-basic-move-method/ 在normal模式下使用如下命令 1.h, j, ...
- 关键字搜索高亮jQuery插件
// textSearch.js v1.0 文字,关键字的页面纯客户端搜索// 2010-06-23 修复多字母检索标签破碎的问题// 2010-06-29 修复页面注释显示的问题// 2013-05 ...
- vue-router scrollBehavior的用法
问题: 使用keep-alive标签后部分安卓机返回缓存页位置不精确问题 解决方案: <div id="app"> <keep-alive> <rou ...
- vue set方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...