一、概述

  使用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. Go学习笔记(三)Go语言学习

    这里我就不写具体的教程了,整理了一些很适合入门学习的网站 菜鸟Go入门 http://www.runoob.com/go/go-basic-syntax.html Go 语言的基本数据类型 https ...

  2. M - Pots

    You are given two pots, having the volume of A and B liters respectively. The following operations c ...

  3. rxjs 常用的管道操作符

    操作符文档 api 列表 do -> tap catch -> catchError switch -> switchAll finally -> finalize map s ...

  4. UIScrollView _getDelegateZoomView bug 经历

    [UIScrollView _getDelegateZoomView] UIKit -[UIScrollView_offsetForCenterOfPossibleZoomView:withIncom ...

  5. CentOS7 下安装mysql历程

    一.成功他妈的经历 背景(废话不用看):自己对Linux不是很熟悉,说难听点就是门都没有么到!基于这近年大数据之类的热闹话题,自己就想学习一下!开始下的是Minimal ISO这个版本,Vbox5虚拟 ...

  6. 启动weblogic报错:string value '2.4' is not a valid enumeration value for web-app-versionType in namespace http://java.sun.com/xml/ns/javaee

    启动报错: 原因:有人改动了web.xml的头 解决方法: 在web.xml中修改抬头为: <?xml version="1.0" encoding="UTF-8& ...

  7. F#周报2018年第52期

    新闻 Sudokube--使用Fable开发的数独立方体 Rust 2019年及以后的发展 视频及幻灯片 我爱F#代码 马蒂亚斯·布兰在Developer On Fire上的演讲--有条理的和有趣的 ...

  8. { MySQL基础数据类型}一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型

    MySQL基础数据类型 阅读目录 一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型 一 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己 ...

  9. 蓝桥杯 入门训练 Fibonacci数列 解析

    问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少. 输入格式 输入包含一个整数n ...

  10. LU decomposition can be viewed as the matrix form of Gaussian elimination.

    https://en.wikipedia.org/wiki/LU_decomposition One way to find the LU decomposition of this simple m ...