FreeBSD 文件和目录查找

【FreeBSD 文件和目录查找】
0. 前言
档案搜寻 , 对于一个新系统来说 , 可能没有很大的用途;
但是对于一个旧系统 , 档案及文件越来越多 , 这时就必须要用搜寻来找寻档案了 。;

1.which
指令 : which ( locate a program file in the user"s path ) ;
语法 : which program
用途 : 从使用者的执行路径 , 寻找执行文件 。
实例 : 搜寻 cd 的位置 。


2.whereis 指令 : whereis ( locate programs ) ;
语法 : whereis [ -bms ] program
用途 : 寻找原始程序数据夹 (source Directory), 二进制程序 (binary). 使用手册 (manuals) ;
参数 : -b 搜寻二进制程序 ; -m 搜寻使用者手册 ; -s 搜寻原始程序的数据夹
实例 :
(1) 搜寻 cd 使用者手册的位置 。


(2) 搜寻 cd 执行文件的位置 。

说明 : 若不加任何参数 , 则表示 -bms 都有 。实例中出现警告讯息乃是因泡泡未安装 X-window 的关系 。;

3.find
指令 : find ( walk a file hIErarchy ) ;
语法 : find 起始目录 -name 欲找的文件名 -print ;
用途 : 在档案系统架构中搜寻 。
实例 : 在目前目录中 , 搜寻名为 test 的档案 。


4.grep 指令 : grep ( print lines matching a pattern ) ;
语法 : grep pattern file_name
用途 : 搜寻档案内容中含有 pattern 的行 。
实例 : 搜寻档案 test 中 , 包含 panda 的行 。
先显示档案内容:


后进行内容搜寻:


5.locate
指令 : locate ( find filenames quickly ) ;
语法 : locate program/file
用途 : 从系统建立的数据库中搜寻档案及数据夹 。
实例 : 从数据库中搜寻 test 档案 。


说明 : /var/db/locate.database 预设的 locate 数据库: /usr/libexec/locate.updatedb
更新 locate 数据库的 script 档案 。/etc/periodic/weekly/310.locate 定时更新重建 locate 数据库的 script 档案 。;
补充 : 因 locate 预设每一个星期才更新一次数据库 , 所以新建立的档案不会出现 。但是它的数据显示量是最多的喔

    推荐阅读