【向Linux迁移记录】Linux中常用搜索命令(find、which、whereis、locate)使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lzw2016/article/details/86534877

find搜索命令

find用来查找文件,命令格式 find [指定目录][查找条件][指定动作]

指定目录:不指定,默认当前目录。指定的话,默认该目录及其子目录下查找

查找条件:

    -name 根据名字查找
    -iname 同上,但文件名不区分大小写
    -size 根据文件大小查找, +,-:大于设置的大小,直接写大小是等于
    -user 查找用户名的所有者的所有文件
    -group 根据所属组查找相关文件
    -type  根据文件类型查找(f文件,d目录,l软链接文件)
    -inum  根据i节点查找
    -amin  访问时间access
    -cmin  文件属性change
    -mmin  文件内容modify

比如说文件名以txt结尾,-name *.txt

其次,可以多个选项一起添加查询

-a 是前后条件都要满足
-o 是满足一个条件就好

例如查找60分钟内被修改的文件,并且文件名字包含conf:

find ~ -cmin -60 -a -name *conf

至于指定的动作,如-ls显示详细信息,我觉得没必要,可以找到文件即可了,其他多数一行命令就行了

whereis搜索命令

whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息

which搜索命令

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

locate搜索命令

这个是个工具,没有自带的要自己装。deepin下安装locate,sudo apt-get install locate

deepin linux下怎么安装使用locate进行文件搜索_百度经验

locate命令其实是"find -name"的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库

locate -i ~/py  //搜索用户目录下所有py开头不区分大小写的文件
locate ~/*.txt

详细locate使用可参考:Linux 命令(文件和目录管理 - locate)


厚脸皮自荐一个项目吧,https://github.com/josonle/Coding-Now

归纳总结了学习记录的一些笔记,视频资源,以及所看得一些电子书eBooks和平常收纳的一些自己认为比较好的博客、网站、工具。
面向爬虫、数据分析、机器学习及深度学习、大数据、算法、数据库等多个方面,项目一直维护,希望大家来赏个眼,谢谢
类似这些:在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lzw2016/article/details/86534877

猜你喜欢

转载自blog.csdn.net/lzw2016/article/details/86534877
今日推荐