Linux之常用命令(3)--搜索命令

    xiaoxiao2023-10-02  156

    搜索命令

    命令名称:find 目录结构:尽量少用搜索命令,因为搜索会占用大量的系统资源,在服务高峰期间,请不要用搜索命令 eg: find / -name init 全盘搜索Init文件名 find / -name *init* 全盘搜索包含init文件名的任意字符 find / -name init??? 全盘搜索末尾不知道的三个字母的init开头的文件,?匹配单个字符 find / -iname init??? 全盘搜索,不区分大小写,以init开头的文件 ------------------------------------------------------------------------------------- find / -size +204800 查找大于100MB的文件 1数据块 512字节 0.5K 1k=2数据块 100MB=102400K=204800数据块 find /etc -size +163840 -a -size -204800 查找大于80M并且小于100M的结果 -a 表示同时满足两个条件 -o 满足两个条件中的一个就是;相当于and or ------------------------------------------------------------------------------------- find /home -user root 找到root所有的文件 find /home -group oracle 找到oracle所属组所有的文件 ------------------------------------------------------------------------------------- find /etc -cmin -5 查找5分钟内,在etc目录下被修改过的目录;+5是超过5分钟 find /etc -amin -5 查找5分钟内,文件属性被修改过的文件 find /etc -mmin -30 查找30分钟内,文件内容被修改过的文件 ------------------------------------------------------------------------------------- find /etc -name inittab -exec ls -l {} \; 在etc下根据名称查找到Inittab,并显示其详细信息;其中{}表示查找到的内容 -exec/-ok 这后面跟上你的操作 -exec是直接显示,-ok会询问你然后进行操作 ------------------------------------------------------------------------------------- -type f 文件 d 目录 l软连接文件 根据文件类型查找 find / -name -type d power; 查找power目录 -------------------------------------------------------------------------------------- find . -inum 31521 -exec rm {} \ 当前目录下查找31521的i节点的文件,然后删除掉它 -------------------------------------------------------------------------------------- $ locate inittab 可以秒搜,屌的一比,因为它在系统里有一个维护的资料库, 但是新增的文件也许没有收录到里面去,也就有可能查不到,所以我们 要更新下资料库,用命令$ updatedb 更新就行了; 但是我们在/tmp里面创建了文件也搜索不到,因为是临时文件; $ locate -i inittab 不区分大小写的查找Inittab; -------------------------------------------------------------------------------------- $ which useradd 查找useradd命令所在文件目录;还可以看到有没有别名 -------------------------------------------------------------------------------------- $ whereis useradd 查找useradd命令所在文件目录,还可以找到帮助文档在哪 -------------------------------------------------------------------------------------- 命令名称:grep eg: $ grep multiuser /etc/initab 查找文件内容里关键词所在位置;查找multiuser关键词在 initab里面的位置 $ grep -i aobama /etc/mama.conf 在mama.conf配置文件里,查找到aobama关键词 $ grep -v ^# /etc/initab 查找initab文件里,排除掉以#号开头的所有内容

    总结

    $ find 尽量在负载高时少用 $ locate updatedb 临时文件不被搜录 -i 不区分大小写 $ which whereis 有什么区别? $ grep -i -v的使用
    最新回复(0)