一天一linux命令(12) which whereis locate find 查找文件和目录

which

语法:which [指令文件...]
说明:查找指令。会在环境变量$PATH设置的目录里查找符合条件的文件。
例一:查找ls的路径
 $ which ls

whereis

语  法:whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
补充说明:在特定目录中查找符合条件的文件。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。
参  数: 
  -b  只查找二进制文件。 
 -B<目录>  只在设置的目录下查找二进制文件。 
 -f  不显示文件名前的路径名称。 
 -m  只查找说明文件。 
 -M<目录>  只在设置的目录下查找说明文件。 
 -s  只查找原始代码文件。 
 -S<目录>  只在设置的目录下查找原始代码文件。 
 -u  查找不包含指定类型的文件。
locate  
 语法:locate [-q] [-d ] [--database=] 
  locate [-r ]
  locate [-qv] [-o ] [--output=] 
  locate [-e ] [-f ] <[-l ] [-c] 
  <[-U ] [-u]> 
  locate [-Vh] [--version] [--help] 
说明:快速查找文件。
原理: 通过定时任务定时生成文件名相关的数据文件(一般会存放在【/var/lib/mlocate/mlocate.db】),当然定时任务不会很实时,这个会导致刚刚安装的软件找不到,这时候大家需要使用(updatedb)来更新locate数据文件。
参数:
   -r 可用正则表达式
   -l <num> 显示数量

find 

语法:find [路径] [参数] 
说明: 实际搜寻硬盘查询文件名称
参数:
1. 时间:
-atime n :将n*24小时内被存取过的文件列出来
-ctime n :将n*24小时内被改变、新增的文件或目录列出来
-mtime n :将n*24小时内被修改过的文件列出来
-newer file :把比file还要新的文件列出来
2. 使用名称:
-gid n :寻找群组ID为n的文件
-group name :寻找群组名称为name的文件
-uid n :寻找拥有者ID为n的文件
-user name :寻找用户名称为name的文件
-name file :寻找文件名为file的文件名称(可以使用通配符)
-type type :寻找文件属性为type的文件,type包含了b, c, d, p, l, s,
这些与前一章的属性相同。例如l为Link而d为目录
范例:
 例一:寻找文件名为testing 
   $ find / -name testing
 例二:寻找文件名包含test的
   $ find / -name 'test*'
例三:寻找当前目录下一天内新增的目录或文件
   $ find . -ctime 1 
 例四:寻找/home/test目录下比.bashrc还要新的文件
   $ find /home/test –newer .bashrc 
 例五:寻找/dev目录下文件属性为b的文件
$ find /dev -type b 
 例六:寻找/home下拥有者为test的文件
   $ find /home -user test 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值