zoukankan      html  css  js  c++  java
  • linux 指令和文件的搜寻

    -------------------------------------------------参考 《鸟哥的linux私房菜-基础篇》第四版

    1 which 寻找执行档

    		which  [-a]  command
    		 -a: 将所有由PATH中可以找到的指令均列出,不止第一个被找到的
    		 例:搜寻ifconfig指令的完整文件名
    

    在这里插入图片描述
    例:搜寻 which指令档名
    在这里插入图片描述

    2文件搜寻

    wheris 搜寻

    在这里插入图片描述
    whereis指令只会搜索特定的一些目录。用whereis -l 可以查看这些目录

    locate/updatedb 指令

    在这里插入图片描述
    例: 1 找出所有与passwd相关的文档 且只列出3个
    locate -l 3 passwd
    2 输出locate所使用的数据库文件相关信息
    在这里插入图片描述
    注:locate指令搜索文件不是去磁盘里搜索,而是已建立的数据库(/var/lib/mlocate)中搜索,这样搜索速度会非常快,但是也存在一个问题。这个文件数据库的建立默认是每天执行一次,当你搜索刚才新建的文件时,可能会搜索不到,这时候就需要手动更新一下文件数据库。直接输入updatedb就可更新文件数据库,该指令会根据/etc/updatedb.conf的设定去搜搜系统磁盘内的文件名,并更新/var/lib/mlocate内的数据库文件。

    find指令

    atime: access time 被访问的时间 显示的是文件中的数据最后被访问的时间,比如系统的进程直接使用或通过一些命令和脚 本间接使用。(执行一些可执行文件或脚本)
    ctime: change time 显示的是文件的权限、拥有者、所属的组、链接数发生改变时的时间。当然当内容改变时也会(inode内容发生改变和Block内容发生改变时)
    mtime:modify time 显示的是文件内容被修改的最后时间,比如用vi编辑时就会被改变。(也就是Block的内容)
    在这里插入图片描述
    例: 找出/usr/local/linux_study目录下24小时之内被改动的文件
    find /usr/local/linux_study -mtine 0
    如果0换成3 find /usr/local/linux_study -mtine 0:
    则表示找出在3天前(假如今天是1月12号,则表示的是1月9号这一天),一天内被修改的文件
    如果3换成+3 find /usr/local/linux_study -mtine 0:
    则表示找出在3天前(假如今天是1月12号,则表示的是1月9号之前,不包括9号这天)被修改的文件
    如果3换成-3 find /usr/local/linux_study -mtine 0:
    则表示找出在3天内(假如今天是1月12号,则表示的是1月9号到1月12号之间)被修改的文件
    find /usr/local/linux_study -newer test.txt:
    找出比test.txt文件文件日期更新的文件
    在这里插入图片描述
    例:
    找出/usr/local/linux_study目录下属于test用户的文件
    find /usr/local/linux_study -user test
    找出系统中不属于任何用户的文件
    find / -nouser
    在这里插入图片描述
    例:找出文件名为test.txt的文件
    find /usr/local/linux_study -name test.txt
    找出文件名包含test的文件
    find /usr/local/linux_study -name “test
    找出大于1M的文件
    find / -size +1M +1M 表示大于1M的,-1M表示小于1M的
    find指令后的额外指令:
    find /usr/bin -perm /7000 -exec ls -l {} ;
    1 {} 表示的find指令找到的内容,由find指令找到的内容会被放到{}中
    2 -exec 一直到 ; 表示find 指令执行完要额外执行的指令
    3 ;在bash环境下是有特殊意义的,因此要用反斜杠来转译

  • 相关阅读:
    c++11:智能指针
    C++11:右值引用
    结构体与联合体
    数组与指针的区别?
    堆和栈的理论知识
    笔试点杂烩
    2、8、10、16进制输出
    单链表的反转
    签约新国都
    Linux下使用autoconf 和 automake 编译简单的HelloWorld
  • 原文地址:https://www.cnblogs.com/labtabhub/p/12164190.html
Copyright © 2011-2022 走看看