最新消息:yaf表单扩展中新增加了浮点数、日期和集合的校验。php yaf框架扩展实践三——表单

linux中whereis查找系统命令的特定文件

Linux 2418浏览 1评论

linux中可以使用whereis查找文件,和find、locate不同的是whereis重在系统命令的搜索。

1、命令格式

whereis -bmsu 搜索字符串
  • -b:binary 只搜索二进制的文件
  • -m:manual 只搜索手册相关的文件
  • -s:source 只搜原始代码的文件
  • -u:unusual 搜素特殊的文件,这个参数比较奇怪

2、命令测试

搜索adduser命令相关的文件

$ whereis adduser

adduser: /usr/sbin/adduser /etc/adduser.conf /usr/share/adduser /usr/share/man/man8/adduser.8.gz

上面会搜索出所有二进制,手册,原始代码文件。

只搜索二进制文件

$ whereis -b adduser

adduser: /usr/sbin/adduser /etc/adduser.conf /usr/share/adduser

关于-u参数的疑问

这个参数,man手册里解释是:Search for unusual entries. A file is said to be unusual if it does not have one entry of each requested type. 这里究竟什么是不寻常项,笔者暂时也没搞清楚。

man手册还有说明使用:Thus ‘whereis -m -u *’ asks for those files in the current directory which have no documentation. 这个比较容易理解,就是说使用”whereis -m -u *”这个命令可以查找出当前目录没有文档的文件。

笔者在/usr/sbin目录下执行这个命令,得到的结果也令人不解。

$ whereis  -m  -u  *

arp: /usr/share/man/man8/arp.8.gz /usr/share/man/man7/arp.7.gz
chroot: /usr/share/man/man2/chroot.2.gz /usr/share/man/man8/chroot.8.gz
invoke-rc:
nologin: /usr/share/man/man5/nologin.5.gz /usr/share/man/man8/nologin.8.gz
tzconfig:
update-bootsystem-insserv:
update-locale:
update-rc:
update-rc:
upgrade-from-grub-legacy:
validlocale:

照理说arp是有相关手册说明,但是为什么搜索出来了呢?非常费解。

总结

基本上笔者只用whereis搜索一些命令相关的文件,和which相比,笔者使用which更多些。关于-u参数,如果有了解的朋友,非常感谢告知。which命令的使用参见:linux中使用which查找命令的所在目录

转载请注明:快乐编程 » linux中whereis查找系统命令的特定文件

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (1)

  1. 恩,这个比较有用,学习一下
    xiaomingtt4年前 (2013-01-03)回复