which

命令格式

which --help
Usage: /usr/bin/which [options] [--] COMMAND [...]
Write the full path of COMMAND(s) to standard output.

作用

locate a command,从环境变量PATH中,定位/返回与指定名字相匹配的可执行文件所在的路径

原理

执行which命令时,which会在当前环境变量PATH中依次寻找能够匹配所找命令名字的可执行文件名,不加-a选项,返回第一个匹配的可执行文件的路径,否则依次返回满足条件的所有可执行文件的路径名。

适用场合

一般用于查找命令/可执行文件所在的路径。有时候可能在多个路径下存在相同的命令,该命令可用于查找当前所执行的命令到底是哪一个位置处的命令。

whereis

用法:whereis [选项] 文件选项:-b         只搜索二进制文件-B <目录>  定义二进制文件查找路径-m         只搜索 man 手册-M <目录>  定义 man 手册查找路径-s         只搜索源代码-S <目录>  定义源代码查找路径-f         终止 <目录> 参数列表-u         搜索不常见记录-l         输出有效查找路径

原理:whereis命令首先会去掉filename中的前缀空格和以.开头的任何字符,然后再在数据库(var/lib/slocate/slocate.db)中查找与上述处理后的filename相匹配的二进制文件、源文件和帮助手册文件,使用之前可以使用updatedb命令手动更新数据库。
适用场合:二进制文件、源文件和帮助手册文件路径的查找。

find

用法: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]默认路径为当前目录;默认表达式为 -print
表达式可能由下列成份组成:操作符、选项、测试表达式以及动作:操作符 (优先级递减;未做任何指定时默认使用 -and):( EXPR )   ! EXPR   -not EXPR   EXPR1 -a EXPR2   EXPR1 -and EXPR2EXPR1 -o EXPR2   EXPR1 -or EXPR2   EXPR1 , EXPR2positional options (always true): -daystart -follow -regextypenormal options (always true, specified before other expressions):-depth --help -maxdepth LEVELS -mindepth LEVELS -mount -noleaf--version -xautofs -xdev -ignore_readdir_race -noignore_readdir_race比较测试 (N 可以是 +N 或 -N 或 N): -amin N -anewer FILE -atime N -cmin N-cnewer 文件 -ctime N -empty -false -fstype 类型 -gid N -group 名称-ilname 匹配模式 -iname 匹配模式 -inum N -ipath 匹配模式 -iregex 匹配模式-links N -lname 匹配模式 -mmin N -mtime N -name 匹配模式 -newer 文件-nouser -nogroup -path PATTERN -perm [-/]MODE -regex PATTERN-readable -writable -executable-wholename PATTERN -size N[bcwkMG] -true -type [bcdpflsD] -uid N-used N -user NAME -xtype [bcdpfls]-context 文本操作: -delete -print0 -printf 格式 -fprintf 文件 格式 -print -fprint0 文件 -fprint 文件 -ls -fls 文件 -prune -quit-exec 命令 ; -exec 命令 {} + -ok 命令 ;-execdir 命令 ; -execdir 命令 {} + -okdir 命令 ;

作用

search for files in a directory hierarchy. 从当前目录递归的搜索文件。

原理

遍历当前工作目录及其子目录,find命令是在硬盘上遍历查找,非常耗硬盘资源,查找效率相比whereis和locate较低。

适用场合

能用which、whereis和locate的时候尽量不要用find.

which whereis find对比

linux查找命令which、whereis、find比较解析相关推荐

  1. Linux查找命令find、loacte、whereis、which、type梳理

    Linux查找命令find.loacte.whereis.which.type梳理 Linux操作系统中有5种常用的查找命令:find,locate,whereis,which,type,他们分别用于 ...

  2. linux 查找某个程序,Linux查找特定程序whereis实例详解

    Linux 查找特定程序 whereis whereis 命令主要用于查找程序文件,并提供这个文件的二进制可执行文件.源代码文件和使用手册存放位置. 1.查找命令程序 例如,查找 touch 命令 [ ...

  3. 【Linux学习笔记】8. Linux查找命令:find和grep详解

    Linux查找命令 find查找文件 grep查找字符串 1. find命令 有多种使用方式: 根据文件名搜索 根据文件大小搜索 根据文件类型搜索 根据修改时间搜索 根据文件权限搜索 根据文件所有者搜 ...

  4. linux下查找命令which/whereis/locate/find的对比和总结

    linux下的查找命令有很多,常用的有which.whereis.locate.find.那么这4个命令之间各自有什么特点,又有什么区别?什么时候该用哪个才最合适呢?详细不少人没法给出一个精确的答案, ...

  5. linux查找文件限制时间,Linux查找命令find与文件三种时间

    Linux中查找命令如下: Which 查看可执行文件的位置. whereis 查看文件的位置. locate 配合数据库查看文件位置. Find 实际搜寻硬盘查询文件名称. 其中find的功能很强大 ...

  6. linux 查找命令

    CentOS Linux学习笔记总结(八十六)-CentOS Linux系统的查找命令find find命令是用于在指定目录下查找文件,并可以对查找到的文件进行指定的操作.它的查找是从指定目录开始,并 ...

  7. linux查找命令、find、grep总结

    find 命令   语法:find 搜索路径 匹配表达式   功能:该命令用于在指定路径中查找符合条件的文件,搜索路径可以是多个目录,不同目录之间以空格分隔   (1)匹配表达式1        -n ...

  8. Linux 查找命令(find、locate 、grep )

    学习Linux系统的第五篇博客:学习如何查询文件. 一.find 命令 作用: 在指定范围内迅速查找到文件. 用法: find 路径 参数 文件名 例如: 查找自己账户下文件名为test.txt的文件 ...

  9. 几种文件查找命令,whereis ,find ,locate.

    whereis对于文件的查找,是将系统内的所有文件放在一个数据库文件里.whereis 和 locate 都是以该数据库为准的(由于每个数据库会有一个更新时间,一般在更新时间之后才可以找到).而fin ...

最新文章

  1. 熬夜写了一个小游戏,向SpaceX聊表敬意
  2. 山东省中职计算机应用专业人才培养方案,计算机应用与维修专业人才培养方案(中职)...
  3. HDU-4483 Lattice triangle 数论
  4. 基于墨刀的软件界面原型设计——小说搜索阅读软件
  5. java根据ip查计算机名_Java如何从IP地址查找主机名?
  6. boost::mp11::mp_erase相关用法的测试程序
  7. php cgi路径解析,php.ini中的cgi.fix_pathinfo选项
  8. 云计算中的Iaas,Paas和Saas
  9. 【es】es 写入流程
  10. Burp Suite Scanner Module - 扫描模块
  11. MATLAB工具箱下载地址总汇
  12. PowerBuilder9.0连接ORACLE数据库
  13. 终极算法:机器学习和人工智能如何重塑世界笔记(转)
  14. Taro框架中开发H5使用微信分享
  15. V2X消息之MAP消息解读
  16. MSDC 4.3 接口规范(7)
  17. 戴尔(Dell)笔记本电脑开机后插上耳机没反应怎么办
  18. 偶像的力量-松哥经典语录
  19. 什么是Pythonic?
  20. Android 打包apk出错问题

热门文章

  1. 【数据库】Oracle基础命令
  2. 再谈“所托非人勿怪人,忠人之事需灵变”
  3. 人工智能数学基础---定积分6:无穷限函数的反常积分计算
  4. mysql 中的1064_错误代码:mysql中的1064
  5. 2. Fortran的Hello world-开始Fortran的编程
  6. Github 首页美化教程 —— 美,是第一生产力
  7. HLJUOJ1117(暴力模拟)
  8. 江苏省职称计算机考试internet,江苏省直2017年4月职称计算机考试报名时间通知...
  9. 蛋白质结构与功能的预测方法总结和资料汇总
  10. 一文详解高性能数据库:读写分离