• Linux 文件搜索命令


    1 locate 命令

      locate 【搜索名】 在后台数据库中按照文件搜索,搜索速度快

      /var/lib/mlocate    所搜索的数据库位置

      updatedb 更新数据库,mlocate数据库是默认一天一次更新,使用updatedb 可以强制更新

    td@td-Lenovo-IdeaPad-Y410P:~$ vi /etc/updatedb.conf
    

    上述命令打开该数据库配置文件,得到如下信息:

      1 PRUNE_BIND_MOUNTS="yes"
      2 # PRUNENAMES=".git .bzr .hg .svn"
      3 PRUNEPATHS="/tmp /var/spool /media /home/.ecryptfs /var/lib/schroot"
      4 PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 n    cpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre tmpfs usbfs udf fuse    .glusterfs fuse.sshfs curlftpfs ecryptfs fusesmb devtmpfs"
    ~                                                                 
    

    一共有4行   PRUNE_BIND_MOUNTS="yes" 表示开启搜索限制,后面三行分别表示不搜索的文件系统,不搜索的文件类型,不搜索的文件路径。

    2 命令搜索命令 whereis 和which

    whereis  命令名   表示所所命令所在的路径,不能查找非命令的文件或者目录

    参数 -b 只查找可执行文件

    参数 -m 只查找帮助文档

    系统下的PATH环境变量,指的是用户自定义的命令。

    td@td-Lenovo-IdeaPad-Y410P:/$ echo $PATH
    /home/td/bin:/home/td/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
    

     3 find命令

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

    find 搜索时一般指定搜索范围,以减少程序运行时间。使用find搜索文件时,如果需要匹配,则使用通配符。

    × 匹配任何内容

    ? 匹配任何字符

    []  匹配括号中的任何一个字符

    find  [搜索范围 ]   -name  文件名称     表示指定范围类使用文件名搜索文件

    td@td-Lenovo-IdeaPad-Y410P:~$ find . -name abc
    ./abc
    find: `./.cache/dconf': 权限不够
    td@td-Lenovo-IdeaPad-Y410P:~$ find . -name "ab[cd]"
    ./abc
    ./abd
    find: `./.cache/dconf': 权限不够
    

    find  [搜索范围 ]   -iname  文件名称     表示指定范围类使用文件名搜索文件,忽略文件名的大小写

    td@td-Lenovo-IdeaPad-Y410P:~$ ls
    abc  abd  cangjk            sougou_64.deb  公共的  视频  文档  音乐
    ABC  Abd  examples.desktop  workspace      模板    图片  下载  桌面
    td@td-Lenovo-IdeaPad-Y410P:~$ find . -iname "ab[cd]"
    ./ABC
    ./abc
    ./Abd
    ./abd
    find: `./.cache/dconf': 权限不够
    

    find  [搜索范围]   -user  [搜索条件]  按照所有者来搜索文件

    find  [搜索范围]   -nouser  [搜索文件]   按照非所有者搜索文件

    find  [搜索范围]   -size  [搜索文件]   按照文件大小搜索文件

    -a  表示 and,逻辑与

    -o  表示or ,逻辑或

    -exec/-ok  命令 {} ; 表示对搜索结果执行命令操作

    td@td-Lenovo-IdeaPad-Y410P:~$ find . -iname "ab[cd]"
    ./ABC
    ./abc
    ./Abd
    ./abd
    find: `./.cache/dconf': 权限不够
    td@td-Lenovo-IdeaPad-Y410P:~$ find . -iname "ab[cd]" -exec rm -rf {} ;
    find: `./.cache/dconf': 权限不够
    td@td-Lenovo-IdeaPad-Y410P:~$ ls
    cangjk            sougou_64.deb  公共的  视频  文档  音乐
    examples.desktop  workspace      模板    图片  下载  桌面
    

    4 grep  [选项]  字符串  文件名

    选项:

     -i  指忽略大小写

     -v  指含义取反

    td@td-Lenovo-IdeaPad-Y410P:~$ grep "size" abc
    size -'asfa'
    =size;salhk
    td@td-Lenovo-IdeaPad-Y410P:~$ grep -i "size" abc
    size -'asfa'
    SizewiMBHN
    sjSize
    =size;salhk
    

     find与grep区别:

       find 是指在系统中搜索符合条件的文件名

      grep 是指在文件中搜索符合条件的字符串

  • 相关阅读:
    难找的对象
    欺负10086客服小姐(超搞笑)
    左手,请握紧你的右手!
    Discuz! 6.x/7.x EXP
    【超搞视频】  另类乞讨让你笑掉大牙 !
    GNU/Linux平台的C程序开发及程序运行环境
    SICK LMS200激光数据采集程序说明
    郭云深划分武学境界
    Discuz XSS得webshell
    200条装修小常识(结婚,不结婚的都要看一下,很有用的)
  • 原文地址:https://www.cnblogs.com/td15980891505/p/6160425.html
Copyright © 2020-2023  润新知