`
guoyunsky
  • 浏览: 837930 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
3d3a22a0-f00f-3227-8d03-d2bbe672af75
Heritrix源码分析
浏览量:202949
Group-logo
SQL的MapReduce...
浏览量:0
社区版块
存档分类
最新评论

Linux的五个查找命令:find,locate,whereis,which,type/区别

 
阅读更多

 

转载自:http://www.path8.net/tn/archives/4257

最近,我在学习Linux,下面是一些笔记。

使用电脑的时候,经常需要查找文件。

在Linux中,有很多方法可以做到这一点。国外网站LinuxHaxor总结了五条命令,你可以看看自己知道几条。大多数程序员,可能经常使用其中的2到3条,对这5条命令都很熟悉的人应该是不多的。

1. find

find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。

find的使用格式如下:

$ find <指定目录> <指定条件> <指定动作>
– <指定目录>: 所要搜索的目录及其所有子目录。默认为当前目录。
– <指定条件>: 所要搜索的文件的特征。
– <指定动作>: 对搜索结果进行特定的处理。

如果什么参数也不加,find默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。

find的使用实例:

搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文件。

$ find . -name ‘my*’

搜索当前目录中,所有文件名以my开头的文件,并显示它们的详细信息。

$ find . -name ‘my*’ -ls

搜索当前目录中,所有过去10分钟中更新过的普通文件。如果不加-type f参数,则搜索普通文件+特殊文件+目录。

$ find . -type f -mmin -10

find

2. locate

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

locate命令的使用实例:

搜索etc目录下所有以sh开头的文件。

$ locate /etc/sh

搜索用户主目录下,所有以m开头的文件。

$ locate ~/m

搜索用户主目录下,所有以m开头的文件,并且忽略大小写。

$ locate -i ~/m

locate

3. whereis

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

whereis命令的使用实例:

$ whereis grep

whereis

4. which

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

which命令的使用实例:

$ which grep

which

5. type

type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用-p参数,会显示该命令的路径,相当于which命令。

type命令的使用实例:

系统会提示,cd是shell的自带命令(build-in)。

$ type cd

系统会提示,grep是一个外部命令,并显示该命令的路径。

$ type grep

加上-p参数后,就相当于which命令。

$ type -p grep

type

 

更多技术文章、感悟、分享、勾搭,请用微信扫描:

分享到:
评论

相关推荐

    which,whereis,locate,find的用法与区别

    which,whereis,locate,find的用法与区别

    linux下which、whereis、locate、find命令的区别.docx

    linux下which、whereis、locate、find命令的区别.docx

    Linux下which、whereis、locate、find 命令的区别

    本文档详细介绍了在Linux系统下which、whereis、locate、find 命令的区别,具体的应用方法,结合案例,非常的实用

    Linux教程,主要内容:Linux 命令、Linux 系统运维、软件运维、精选常用Shell脚本.zip

    查看 Linux 命令帮助信息 - 关键词:help, whatis, info, which, whereis, man Linux 文件目录管理 - 关键词:cd, ls, pwd, mkdir, rmdir, tree, touch, ln, rename, stat, file, chmod, chown, locate, find, cp, ...

    Linux命令笔记

    4:whereis 搜索命令所在目录级帮助文档路径 语法:whereis[命令名称] 5:grep 在文件中搜索字串匹配的行并输出 语法:grep -iv[指定字串][文件] 6:uname 显示当前操作系统名称 常用命令/压缩解压 1:gzip 压缩文件 ...

    Linux系统配置及服务管理:文件查找

    (which is 或者 whereis vim ) locate:文件查找,依赖数据库。 而今天的主角find查找命令是在linux中最重要也是应用最多的,通常的用法是在指定目录里查找文件。 find的语法是 :find [ path…] [options] ...

    云计算Linux文件查找与压缩干货

    which :命令查找 find: 文件查找,针对文件名 locate:文件查找,依赖数据库 一、命令文件查找 一、查找ls 命令的位置 # which ls //从PATH环境变量 或者 # whereis vim 二、任意文件 find...

    linux 命令全集

    这是因为 Linux 系统会将系统内的所有档案都记录在一个数据库档案里面,而当使用 whereis 或者是底下要说的 locate 时,都会以此数据库档案的内容为准,因此,有的时后你还会发现使用这两个执行档时,会找到已经被杀...

    Linux中的文件查找

    which :命令查找 find: 文件查找,针对文件名 locate:文件查找,依赖数据库 命令文件查找 查找ls 命令的位置 #which ls //从PATH环境变量 或者 #whereis vim 任意文检查找find 语法 find [path…] [options] ...

    Linux常见命令与shell脚本

    1.24 whereis和which查找命令所在目录 13 1.25 grep搜索文件内容 13 1.26 tar文档管理 14 1.27 gzip/gunzip 和 bzip2/bunzip2文件压缩/解压缩 15 1.28 unzip winzip文件解压缩 17 1.29 其他常用命令 17 2 vi编辑器 ...

    Linux命令搜索工具linux-command.zip

    diff、diffstat、file、find、git、gitview、ln、locate、lsattr、mattrib、mc、mcopy、mdel、mdir、mktemp、mmove、mread、mren、mshowfat、mtools、mtoolstest、mv、od、paste、patch、rcp、rhmask、rm、slocate...

    Linux which命令的具体使用

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which 查看可执行文件的位置。 whereis 查看文件的位置。 locate 配合数据库查看文件位置。 find 实际搜寻硬盘查询文件...

    linux-tutorial:Linux教程,主要内容:Linux命令,Linux系统运维,软件运维,精选常用Shell脚本

    help-关键词: help , whatis , info , which , whereis , man cd , ls , pwd , mkdir , rmdir , tree , touch , ln , rename , stat , file , chmod , chown , locate , find , cp , mv , ...

    Linux基础知识(4): 文件搜索命令

    文章目录1 文件搜索——locate2 命令搜索——whereis与which3 文件名搜索——find命令4 字符串搜索——grep 注:转载请标明原文出处链接:https://xiongyiming.blog.csdn.net/article/details/105856510 1 文件...

    Linux文件查找,打包,压缩,解压

    which :命令查找 find: 文件查找,针对文件名 locate:文件查找,依赖数据库 命令文件查找 查找ls 命令的位置 which ls //从PATH环境变量 或者 whereis vim 任意文件 find 语法 find [path...] [options] ...

    Linux—文件查找

    which :命令查找 find: 文件查找,针对文件名 locate:文件查找,依赖数据库 一、命令文件查找 一、查找ls 命令的位置 #which ls //从PATH环境变量 或者 #whereis vim 二、任意文件 find 语法 find [path…] ...

    Linux指令一周通 (技术图书大系).azw3

    1.83 whereis指令:查找文件 1.84 which指令:查找文件 1.85 zip指令:压缩文件 1.86 zipinfo指令:显示压缩文件的信息 第2天 文本编辑指令 2.1 col指令:过滤控制字符 2.2 colrm指令:删除指定的列 2.3 comm指令:...

    linux.chm文档

    whereis halt 显示一个二进制文件、源码或man的位置 which halt 显示一个二进制文件或可执行文件的完整路径 挂载一个文件系统 mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经...

    Linux系统总复习.txt

    whereis 帮助文档 find -name -iname -size -user -atime -ctime -mtime -type -inum -perm -exec(查询结果中直接执行) locate 在数据库中按文件名查找 updatadb 强制更新数据库 grep -i -v -i 忽略大小写 -v ...

Global site tag (gtag.js) - Google Analytics