linux 命令行 查找文件_grep命令查找文件

linux 命令行 查找文件_grep命令查找文件一grep:查看文件内容,在文件中查询一个关键字,即搜索字符串的命令(在指定的文件中搜索符合条件的字符串)grep是包含匹配,不是完全的精确匹配,特别适合查找内容语法:grep[-option]需要搜索的关键字文件名参数:-n—-连行号一起显示-c—-统计有几行-i—-忽略大小写(一般用的少)-v—-排除指定的字符串(了解),取反,查找出来的内容是搜索条件以外的所有的内容例如:[root@localhostTEST~]#grep-n

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺


grep : 查看文件内容,在文件中查询一个关键字,即搜索字符串的命令(在指定的文件中搜索符合条件的字符串)
grep 是包含匹配,不是完全的精确匹配,特别适合查找内容
语法 :
grep [-option] 需要搜索的关键字 文件名

参数:
-n —- 连行号一起显示
-c —- 统计有几行
-i —- 忽略大小写(一般用的少)
-v —- 排除指定的字符串(了解),取反,查找出来的内容是搜索条件以外的所有的内容
例如:
[root@localhostTEST ~]# grep -n -i “services” anaconda-ks.cfg
22:# System services
23:services –disabled=“chronyd”
[root@localhostTEST ~]# grep -c “services” anaconda-ks.cfg
2
[root@localhostTEST ~]# grep -c -n “services” anaconda-ks.cfg – 参数-c和其它参数一起使用时,结果只显示统计行数2

find :用于查找文件,适合找文件使用(linux 中最强大的搜索命令)
语法: find [path] [-option] —- find [搜索范围][搜索条件]
参数: -name 文件名 —- 按照文件名进行搜索
缺点:慢,原因就是会遍历磁盘内所有的文件名,所以在实际工作中,避免大范围内搜索,很耗资源
find 是在系统中搜索符合条件的文件名,是完全匹配,一模一样的名字,如果搜索过程中,需要匹配范围变大,使用通配符,并且
用双引号括起来,让计算机更好的识别

常见的通配符: * ? []
通配符 * ,将目录名字包含搜索条件的全部都列出来
[root@localhostTEST ~]# find / -name “pack*”
通配符 ?,表示将以搜索条件开头的目录都找出来
[root@localhostTEST ~]# find / -name “B?”
通配符 [],结合 * 一起使用,表示查询文件以 [] 里面的内容结尾命名的文件信息
[root@localhostTEST ~]# find / -name “*[A]”
按照文件的所有者进行搜索(了解)
参数: -user 所有者 —- 按照文件的所有者进行搜索(了解)
[root@localhostTEST ~]# find / -user test01

locate : 用来查找文件,按照文件名查找,消耗资源小,比find -name 快很多,但是新创建的文件找不到,并且 tmp 临时目录
下的文件也找不到,原因,是locate 查找的是 Linux的数据库 /var/lib/mlocate.db ,但是数据库每天自动更新一次,所有刚创建
的文件找不到。
语法 : locate 文件名
[root@localhostTEST ~]# find / -name “测试”
/home/test01/测试
[root@localhostTEST ~]# locate “测试” – “测试”是新建文件,数据库还没有更新,找不到
[root@localhostTEST ~]# updatedb – 手动更新数据库
[root@localhostTEST ~]# locate “测试” – 再次查询,就找出来了
/home/test01/测试

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172574.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java时间类的使用和区别

    java时间类的使用和区别java中经常使用的6大时间类:java.util.Date              日期格式:年月日时分秒java.sql.Date               日期格式:年月日java.sql.Time               日期格式:时分秒java.sql.Timestamp          日期格式:年月日时分秒纳秒    从数据库中取出来的日期一般都用getTimestamp(…

    2022年6月13日
    28
  • exit是什么意思(TerminateProcess)

    首先来谈谈一个进程的执行流程。每个应用程序都有个主函数,在WINDOWS下,只支持两种类型的应用程序——CUI(控制台应用程序)和GUI(图形界面应用程序),相应的,其主函数类型不同。来看下这几个入口函数int WINAPI WinMain(HINSTANCE hinstExe, HINSTANCE,PSTR pszCmdLine, int nCmdShow);    int WINAPT w

    2022年4月15日
    76
  • gulp pipe缓存_gulp使用教程

    gulp pipe缓存_gulp使用教程首先,gulp的源码里没有任何一部分是定义pipe的。gulp的pipe方法是来自nodejsstreamAPI的。gulp本身是由一系列vinyl模块组织起来的。pipe方法到底是什么呢?pipe跟他字面意思一样只是一个管道例如我有一堆文件var s=gulp.src(["fileA","fileB","fileC"])src方法实际上是’vinyl-fs’模…

    2025年5月22日
    3
  • dataloader 源码_DataLoader

    dataloader 源码_DataLoaderimportpaddle.fluidasfluidimportnumpyasnpBATCH_NUM=10BATCH_SIZE=16EPOCH_NUM=4CLASS_NUM=10ITERABLE=True#whetherthecreatedDataLoaderobjectisiterableUSE_GPU=False#whethertous…

    2022年6月11日
    37
  • windows nginx使用

    windows nginx使用

    2020年11月9日
    234
  • 批处理for语句_批处理for循环跳出循环

    批处理for语句_批处理for循环跳出循环
    @echooff
    set/Ai=1
    :loop
    if “%i%”==”14” (
    gotoend
    )
    copy/Ydata%i%.indata.in
    echodata.in
    typedata.in
    stu
    copy/Ydata.outdata%i%.out
    echodata%i%.out
    typedata%i%.out
    comp/A

    2022年10月10日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号