一、概述

  使用linux系统难免会忘记文件所在的位置,可以使用以下命令对系统中的文件进行搜索。

1.1、find

  语法:find <指定目录> <指定条件> <指定动作>即:find [范围] [条件] [文件名]

  find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression]

1、find命令搜索在根目录下的所有nginx文件所在位置

find / -name  'nginx'

  / 是搜索范围,根目录 。 缩小范围/root/ 表root目录下 等

  -name 是根据名称

  查不到,因为不是模糊查询。文件名要具体指定

2、如果想要模糊查询,则加通配符

通配符: *

find / -name  'nginx*'

匹配所有 nginx开头的

3、通配符 ?

一个? 表示 查找算法后 有一个字符的

find / -name  'nginx?'

只能匹配 nginx1,nginx2,不能多个字符,nginx34

两个? 表示 查找算法后 有两个字符的

4、通配符* 和 ? 可以加在关键字 算法的任意位置

5、通配符 [ ]

表示有 [ ] 内的任意一个字符 都能查找出来

find / -name  'ngi[ng]x'

匹配nginx、ngigx

6、linux是区分大小写的,如果文件名是小写,如果搜索是写成大写的就查找不到了

如果不区分大小写只需在name前加个 i

find / -iname  'nginx'

不区分大小写

7、根据用户-user

  根据文件名-name查找

  查找root 用户目录下 所有文件

find / -user root

8、-size  根据文件大小查找

命令 [root@localhost ~]# find /root/ -size 2k

2k 表示1~2k

1k 表示 0~1k

+2k 表示大于2k

-2k表示小于2k

命令 [root@localhost ~]# find /root/ -size +10k –a –size -20k

表示查找root目录下 大于10k并且小于20k 的文件

-a 表示 and与

-o 表示 or或

9、-inum  根据i节点查找

[root@localhost ~]# ll -i   显示所有i节点的文件

ll -i
-rw-r--r-- root root 2月 : test.txt

查找

find /export/servers/ -inum
# /export/servers/test.txt

10、根据时间查找

-atime  +n 表示访问或执行时间大于n天的文件

-ctime  +n 表示写入更改时间大于n 天的文件

-mtime  +n  表示写入时间大于n天的文件,用的最多

-n 就表示 小于n 天

1.2、locate

  比find命令快。因为它查询的是数据库(/var/lib/locatedb),数据库包含本地所有的文件信息。搜索速度快,但不适合精确查找。一般不用。

  如上例:

locate nginx

1.3、whereis

  使用”whereis“命令可以搜索linux系统中的所有可执行文件即二进制文件

  如搜搜grep命令

whereis grep

1.4、which

  使用which命令查看系统命令是否存在,并返回系统命令所在的位置

  使用which命令查看grep命令是否存在以及存在的目录的命令为:

which grep

1.5、type

  使用type命令查看系统中的某个命令是否为系统自带的命令

  使用type命令查看cd命令是否为系统自带的命令;查看grep 是否为系统自带的命令。

type cd
type grep

1.6、grep查文件内部

Grep [要查找的字符串] [路径]

查找 目录中配置文件中的 字符串

grep test /export/servers
grep: /export/servers: 是一个目录

grep test /export/servers/test.txt
test is test s

选项

-i 忽略大小写

-v 排除指定字符串

004-linux命令-搜索命令find、locate、whereis、which、type的更多相关文章

  1. linux 命令中的find locate whereis which type 使用区别

    find 最强大,但参数也较多,需指定查找目录,如 find / -name “filename” locate 是一个快速查找命令,有预先索引好的数据库,由于数据库是定时更新,因此,结果上可能会有迟 ...

  2. Linux常用命令学习2---(文件搜索命令locate find、命令搜索命令whereis which、字符串搜索命令grep、帮助命令man)

     1.文件搜索命令:locate [文件名]    在后台数据库中按文件名搜索,搜索速度比find快,耗费资源更少    例子:locate test.txt,就会显示文件名包含 test.txt的所 ...

  3. Linux文件搜索命令

    文件搜索命令:locate locate 文件名 在后台数据库中按文件名搜索,搜索速度很快(比find命令要快得多) locate命令所搜索的后台数据库的位置:/var/bin/mlocate 支持模 ...

  4. Centos之命令搜索命令whereis与which

    Centos之命令搜索命令whereis与which whereis 命令名 #搜索命令所在路径及帮助文档所在位置 选项: -b :只查找可执行文件位置 -m:只查找帮助文件 [root@localh ...

  5. Linux 文件搜索命令:find、which、whereis 和 locate

    Linux 提供了许多用于文件搜索的命令,这些命令都很强大,但是也有一些不同之处,这里分别介绍一下. 一.find 命令 find 是最常见和最强大的一个文件搜索命令.使用 find 命令可以在指定目 ...

  6. Linux的五个查找命令:find,locate,whereis,which,type

    使用电脑的时候,经常需要查找文件. 在Linux中,有很多方法可以做到这一点.国外网站LinuxHaxor总结了五条命令,你可以看看自己知道几条.大多数程序员,可能经常使用其中的2到3条,对这5条命令 ...

  7. 【转】Linux的五个查找命令:find,locate,whereis,which,type

    原文网址:http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html 最近,我在 ...

  8. Linux的五个查找命令:find,locate,whereis,which,type 及其区别

    1. find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件. find的使用格式如下: $ find <指定目录> <指定条件> <指定动作> ...

  9. Linux系列(10) - 命令搜索命令whereis与which

    whereis 只能搜索系统命令,不能搜索自己凭空创建的普通文件 命令格式: whereis [命令名] 选项: -b:只查找可执行文件 -m:只查找帮助文件 which 搜索命令所在路径及别名:不是 ...

随机推荐

  1. [Tensorflow] Object Detection API - prepare your training data

    From: TensorFlow Object Detection API This chapter help you to train your own model to identify obje ...

  2. [JS] Topic - hijack this by "apply" and "call"

    Ref: 详解js中的apply与call的用法 call 和 apply二者的作用完全一样,只是接受参数的方式不太一样. 参数形式: Function.apply(obj,args) call方法与 ...

  3. fs项目---->async/await的学习(一)

    2018-07-11号,我来到了fs项目组担任后端开发的角色.这是我来thoughtworks以来首个的正式项目,不管是在技术还是在敏捷的实践中都是受益匪浅.来感受tw特殊的文化的同时,我希望自己能够 ...

  4. POJ 3249 Test for Job

    Test for Job Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 13457 Accepted: 3100 Descrip ...

  5. 整合Solr与tomcat以及第一个core的配置

    整合Solr与tomcat以及第一个core的配置 一.准备安装文件 Tomcat : apache-tomcat-8.5.32.tar.gz Solr:solr-5.3.1.tgz 二.创建目录并解 ...

  6. 170824、storm 环境搭建

    /*********************storm 环境搭建 **********************/ 1 安装jdk1.7 2 安装zookeeper集群环境 3 安装Python2.6. ...

  7. easyui tree 更改图标

    easyui tree 更改图标 ,onLoadSuccess: function (node, data) { $('#tt .tree-icon').css("background&qu ...

  8. 专访姚冬:All-in-One,智能时代下企业需要更快速的变革

    2017年,msup将咨询服务列入公司发展战略目标,并邀请前IBM大中华区技术总监姚冬成为咨询合伙人.近一年来,msup在咨询服务方面持续发力,与包括百度.平安科技.用友等在内的大型公司形成企业合作联 ...

  9. babel-preset-env使用介绍

    声明:文章转自https://www.cnblogs.com/ye-hcj/p/7070084.html 本文介绍一个babel转码神器babel-preset-env 简介 现如今不同的浏览器和平台 ...

  10. Flannel配置详解

    1.简介 Flannel是一种基于overlay网络的跨主机容器网络解决方案,也就是将TCP数据包封装在另一种网络包里面进行路由转发和通信, Flannel是CoreOS开发,专门用于docker多机 ...