网易-Java开发实习生选择题-linux

本文介绍了在Linux系统中查找可执行文件的五个命令:whereis、locate、which、type和find。whereis主要用于定位指令的相关文件路径;locate通过数据库快速查找文件,但不包含最新变动;which显示命令的绝对路径;type判断命令类型,区分内部和外部命令;find则在指定目录下查找文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Linux系统中,可以用来查找可执行文件的是?

(1)whereis

(2)locate

(3)which

(4)type

(5)find

答案:(1)(2)(3)(4)(5)

解析

(1)whereis: 

    whereis命令用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。

    whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。

(2)locate: 

    locate命令slocate命令都用来查找文件或目录。

    locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。 

(3)which: 

    which命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

(4)type: 

    type命令用来显示指定命令的类型,判断给出的指令是内部指令还是外部指令。

命令类型: 

  • alias:别名。 
  • keyword:关键字,Shell保留字。 
  • function:函数,Shell函数。 
  • builtin:内建命令,Shell内建命令。 
  • file:文件,磁盘文件,外部命令。
  • unfound:没有找到。 
-t:输出“file”、“alias”或者“builtin”,分别表示给定的指令为“外部指令”、“命令别名”或者“内部指令”;
-p:如果给出的指令为外部指令,则显示其绝对路径;
-a:在环境变量“PATH”指定的路径中,显示给定指令的信息,包括命令别名。
[root@localhost ~]# type date date is /bin/date [root@localhost ~]# type mysql mysql is /usr/bin/mysql

因为显示的是路径,可以理解为找到了这个文件(个人理解)。

(5)find: 

find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值