linux中which与whichis文件目录查找函数详解linux操作系统 -电脑资料

时间:2012-08-09 06:37:26
染雾
分享
WORD下载 PDF下载 投诉

在linux中 which查找命令的所在目录了,而whereis查找系统命令的特定文件的,下面小编来给大家介绍一下他们的一些简单使用实例吧,

linux中which与whichis文件目录查找函数详解linux操作系统

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:

which查找命令的所在目录

、命令格式

which -a 命令参数含义:

•-a:all,列出所有匹配的路径,

电脑资料

《linux中which与whichis文件目录查找函数详解linux操作系统》()。

•命令:就是shell命令,如ls、mkdir等

which这个命令实际上就是根据环境变量PATH设置的目录进行依次查找,找到第一个就停止。如果加上-a

参数,则会遍历所有PATH设置的目录进行查找。

2、命令测试

查看ls这个命令的全路径

$ which ls

/bin/ls可以看到ls命令是在bin下面,系统执行ls命令的时候,就是执行/bin/ls这个文件。

查找所有匹配的路径

为了更好的看到效果,将ls命令复制到环境变量PATH所在的目录,在笔者电脑上PATH值为:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games将ls命令复制

到/usr/games下:

$ cp /bin/ls /usr/games/ls加上-a参数测试:

$ which -a ls

/bin/ls

/usr/games/ls可以看到ls存在于两个目录之中了,那么系统执行ls命令的时候,会执行哪一个呢?答案

是第一个。

cd命令的问题

$ which cd在测试cd命令的时候,没找到这个命令所在的目录,非常奇怪。后来使用type cd查看,发现

cd原来是内建命令。

总结

which这个命令参数不多,其中涉及到了环境变量PATH而whereis搜索一些命令相关的文件,和which相比

,笔者使用which更多些。关于-u参数,如果有了解的朋友,非常感谢告知

linux中which与whichis文件目录查找函数详解linux操作系统 -电脑资料

手机扫码分享

Top