定位、查找文件的命令

命令 功能 命令 功能
which 从path中找出文件的位置 find 找出所有符合要求的文件
whereis 找出特定程序的路径 locate   从索引中找出文件位置

9.1 which

语法

which command

说明

依序从path环境变量所列的目录中找出command的位置,并显示完整路径的名称。在找到第一个符合条件的程序文件时,就立刻停止搜索,省略其余未搜索目录。

范例,找出ls命令的程序文件的位置:

which ls

系统输出:

/usr/bin/ls

9.2 whereis

语法

whereis [option] name

说明

找出特定程序的可执行文件、源代码文件以及manpage的路径。你所提供的name会被先除去前置的路径以及任何.ext形式的扩展名。

whereis 只会在标准的Linux目录中进行搜索。

常用选项

-b

只搜索可执行文件。

-m

只搜索manpage。

-s

只搜索源代码文件。

-B directory

更改或限定搜索可执行的文件的目录。

-M directory

更改或限定搜索manpage的目录。

-S directory

更改或限定搜索源代码文件的目录。

9.3 find

语法

find paths expression [action]

说明

以paths为搜索起点逐层往下找出每一个符合expression条件的文件,并对该文件执行action所代表的动作。expression是搜索条件,它由一个代表匹配项目的选项以及一个代表匹配模式的参数构成。

action是处理动作,它有一个代表“处理方式”的选项以及一个操作参数构成。若不指定action,则默认动作是显示出文件名。

常用的搜索条件

-name pattern 
-path pattern 
-lname pattern

找出名称、路径名称或符号链接的目标匹配pattern模式的文件。pattern可以包含shell的文件名通配符,路径是相对于搜索起点的。

常见处理动作

-print

显示出文件的相对路径(相对于搜索起点)。

-exec cmd /;

执行指定的shell命令。若cmd含有任何shell特殊字符,则他们之前都必须加上/符号,以免shell立刻执行他们。在cmd里,可以用”{}”符号(包括双引号)表示find所找出的文件。

9.4 locate

语法

locate patterns

说明

第一次执行locate时,它会建立一个索引数据库,当往后再次执行时,它便从索引数据库中迅速找出文件的位置。locate很适合用来反复搜索很少变动的目录树,但是对于刚改名的旧文件以及新建的文件,locate就找不到了,除非重建数据库。

updatedb

语法

updatedb [option]

说明

更新slocate的索引数据库。

选项

-e directories

略过directories所列的目录。

最新文章

  1. 队列的链式存储方式的实现(Java语言描述)
  2. Description of security events in Windows 2003/7/2008
  3. Loadrunner 使用检查点
  4. Notification用法
  5. N_F1_APPROVE
  6. HDOJ(HDU) 1785 You Are All Excellent(角度运算)
  7. MVC 5 Ajax + bootstrap+ handle bar 例: 实现service 状态
  8. 【IE6的疯狂之九】li在IE中底部空行的BUG
  9. Vue.js学习笔记(三) - 修饰符
  10. jQuery知识点整合
  11. sublime text 的小细节设置,让你的代码更优美
  12. shell编程练习(二): 笔试11-20
  13. SQL 简介
  14. 我的Java之旅 第四课 JAVA 语言语法 基础
  15. is not allowed to connect to this MySQL server解决办法
  16. Oracle 数据库和监听器开机自启动两种实现方法
  17. Android APP架构设计——MVC、MVP和MVVM介绍
  18. python爬虫 赶集网
  19. HTTP Status 500 - com.opensymphony.xwork2.ActionSupport.toAddPage()
  20. 新东方雅思词汇---7.3、dioxide

热门文章

  1. ipa 发布到stroe
  2. 在ASP.NET MVC5中使用特性路由
  3. Effective C++ Item 42 了解 typename 的双重意义
  4. WCF入门学习2-控制台做为宿主
  5. 将一个4X4的数组进行逆时针旋转90度后输出,要求原数组数据随机输入
  6. Spring Boot干货系列:(一)优雅的入门篇
  7. python 在Unicode和普通字符串 str 之间转换
  8. js中将文件的base64转换成file并上传到服务器
  9. HOW TO:使用 Visual C# .NET 打印 RichTextBox 控件的内容
  10. Hive shell 命令