linux 搜索命令

搜索命令

locate命令

搜索速度快,是按照数据库进行搜索的(数据库位置在/var/lib/mlocate/mlocate.db)

复制代码
locate abc.txt

这个数据库是在半夜通过cron执行updatedb建立的,有时候新创建的文件使用locate来搜索文件搜索不到,可能是因为文件的索引还没有更新到数据库中,可以使用updatedb来手动更新

find命令

虽然locate命令搜索速度很快,但是locate只能搜索文件名,不能根据权限、类型、时间来进行搜索,而使用find命令来搜索文件就可以进行细分了

复制代码
#find 搜索路径 [选项] 搜索内容
find . db

------------------------
选项
按文件名
-name  按文件名
-iname 按文件名,不区分大小写
-inum  按inode搜索
按大小
-size  [+|-]大小  按照文件大小来搜索,-表示该时间以内,+表示该时间以外
按修改时间,以天为单位
-atime [+|-]时间  访问时间
-mtime [+|-]时间  数据修改时间
-ctime [+|-]时间  状态修改时间
按权限
-perm
按文件所有者和所属组
-uid  用户id
-gid  组id
-user 用户名
-group 组名
-nouser  没有所有者的文件
按类型
-type  d目录 f普通文件 l软链接
按逻辑运算,可以使得多种条件组合
-a   与
-o   或
-not 非

find命令还可以进行组合操作

复制代码
#find 路径 [选项] 内容 -exec 命令2 {} \;
#把find命令搜索到的结果交给-exec中命令2去处理  {}代表了find命令搜索到的结果
 find . -name *.cfg -exec ls -l {} \;
#find 路径 [选项] 内容 -ok 命令2 {} \;
#ok与exec的区别在于  exec直接执行,ok会进行询问

grep命令

用于在文件中搜索符合条件的字符串,是最早的文本匹配命令

复制代码
#grep [选项] 字符串 文件名
grep  "cd" 123.txt

--------------------------
选项
-q  后跟关键词,此时查找时不会产生任何信息
-i  忽略大小写
-l  只显示文件名
-c  只输出匹配行的计数
-n  输出行号
-v  反向查找,显示不匹配的行
-w  全字匹配
--color=auto 搜索出来的文字颜色显示
-A 显示匹配行以及后面的n行
-B 显示匹配行以及前面的n行
-C 显示匹配行和它前后n行
-F 查找固定的字符串,如果匹配的文本中不包含正则,默认就使用了-F

cut命令

与grep相对应,grep是提取一行数据,cut是提取一列数据(列与列之间必须使用tab分隔)

复制代码
cut -f 2 stu.txt
name
张三
李四

#提取多列
cut -f 1,2 stu.txt
id name
1 张三
2 李四

--------------------
参数
-f 列号  提取第几列
-d 分隔符  按照指定分隔符分隔列(默认是tab)
-c 字符范围  n- 表示从第n个字符到行尾   n-m表示从第n个字符到第m个字符 -m表示从第1个字符到第m个字符

type命令

使用type命令可以查找到命令存储位置

复制代码
type java
java is /usr/bin/java

https://zhhll.icu/2021/linux/基础/搜索命令/

本文由mdnice多平台发布

相关推荐
程序猿chen3 小时前
JVM考古现场(二十四):逆熵者·时间晶体的永恒之战
java·jvm·git·后端·程序人生·java-ee·改行学it
lkbhua莱克瓦249 小时前
用c语言实现——一个带头节点的链队列,支持用户输入交互界面、初始化、入队、出队、查找、判空判满、显示队列、遍历计算长度等功能
c语言·数据结构·程序人生·算法·链表·交互·学习方法
Sherlock Ma2 天前
CSS零基础入门笔记:狂神版
前端·css·程序人生·跳槽·css3·学习方法·改行学it
Tiger Z2 天前
R 语言科研绘图 --- 饼状图-汇总
开发语言·人工智能·程序人生·r语言·贴图
程序猿chen3 天前
《JVM考古现场(二十三):归零者·重启奇点的终极奥义》
java·jvm·git·后端·程序人生·java-ee·改行学it
灏瀚星空6 天前
AI 模型高效化:推理加速与训练优化的技术原理与理论解析
开发语言·人工智能·深度学习·程序人生·机器人·智慧城市·量子计算
七七知享6 天前
Python深度学习实现验证码识别全攻略
开发语言·python·深度学习·程序人生·程序员·开发·验证码
七七知享6 天前
开启 Python 编程之旅:基础入门实战班全解析
开发语言·python·程序人生·程序员·零基础·实战
测试界萧萧7 天前
17:00开始面试,17:08就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
(王子变青蛙)7 天前
C++初始
开发语言·c++·程序人生