which、locate、whereis、find命令

find、which、locate、whereis

在Linux系统中有这几个搜索命令,find which locate whereis

一、which命令

which命令比较常用,格式为which filename, which命令只能查找PATH环境变量中出现的路径下的可执行文件,用它可以查看一个可执行文件的绝对路径以及有没有别名

[root@test-01 ~]# which ls
alias ls='ls --color=auto'
	/usr/bin/ls

二、whereis命令

whereis命令不常用,格式为whereis_ -参数 filename_ 参数及含义如下:

  • -b: 只查找二进制文件
  • -m:只查找帮助文件(在man目录下的文件)
  • -s:只查找源代码文件
[root@test-01 ~]# whereis ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz

whereis命令类似于模糊查找,如上所示,运行whereis ls 只要带有ls字符,就会被列出来

三、locate命令

首先安装mlocate包才能运行locate命令,

[root@test-01 ~]# yum install -y mlocate

并且首次使用会报错,因为系统没有生成mlocate.db这个库,可以使用updatedb命令

立即生成,如果服务器在跑业务,最好不要执行这条命令, locate命令也是模糊查找,在搜索到的列表中,不管是目录还是文件,只要包含我们所查找的字符,就会被列出来,所以locate不适合精确查找。

四、find命令

find命令是最常用的搜索命令,格式为find [路径] [参数]

  • -atime +n /-n:表示访问或执行时间大于(+)、或小于(-)n天的文件
  • -ctime +n /-n:表示写入、更改inode属性(所有者,权限,链接等)的时间大于(+)、或小于(-)n天的文件
  • -mtime +n/-n :表示写入时间大于或小于n天的文件

还有一种写法是-mmin -10 ,这就表示10分钟以内的文件

find命令还有一种常用的方式:

find -name filename:表示直接查找该文件名的文件,这个用法支持通配符* ,

[root@test-01 ~]# find /usr/bin/ls*
/usr/bin/ls
/usr/bin/lsattr
/usr/bin/lsblk
/usr/bin/lscpu
/usr/bin/lsinitrd
/usr/bin/lslocks

find -type_ filetype_:可以通过文件类型来查找文件

filetype 包括 f =文件 ,b=块设备,比如磁盘分区。l=软链接,c=串行端口(字符串设备),d=目录,s=套接字文件。

转载于:https://my.oschina.net/u/3731306/blog/1594059

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值