红联Linux门户
Linux帮助

RHCE第十五讲:可执行文件的搜索

发布时间:2010-12-07 10:46:42来源:红联作者:linuxcui
which
which用于显示查找可执行文件的完全路径,例如:
[kevinz@stationXX kevinz] $which ls

alias
ls = ‘ls
--color=tty ‘


/bin/ls
which 首先查找系统中别名记录(alias),然后查找系统路径($PATH)。一般我们不把当前目录” . “加入系统路径,所以当前路径中的文件命令不在显示中。
whereis
whereis用于显示查找文件的路径、该文件的帮助文件路径、该文件的相关原程序的路径,例如:
[kevinz@stationXX kevinz] $whereis chdir
mkdir :
/bin/mkdir
/usr/share/man/man1/mkdir.1.gz
/usr/share/man/man2/mkdir.2.gz
[kevinz@stationXX kevinz] $whereis fstab
fstab:
/etc/fstab
/etc/fstab.REVOKE
/usr/include/fstab.sh
/usr/share/man/man5/fstab.5.gz
/usr/share/man/man5/fstab.5.gz
slocate
首先locate是slocate的一个符号链接,我们可以这样查看:
[kevinz@stationXX kevinz] $ls -l /usr/bin/locate
lrwxrwxrwx
root
slocate
7
Jul
22
23:03
/usr/bin/locate -> slocate
slocate的数据库由守护进程(crond )在每天早上4:02自动更新,也就是说如果你现在对系统文件作的修改不会在slocate反映出来。当然我们可以使用updatedb指令来手动更新数据库,不过这是需要花费时间的工作。


find
find 是我们最常用的文件查找工具,相比slocat 而言它有纪实性的优点,语法如下:
find
[路径]
[参数]
[表达式]
例如:
[kevinz@stationXX kevinz] $ find
/usr/share/doc
-name
filename

命令
路径
参数
表达式
find的常用find参数如下:
•-user:根据文件拥有者寻找文件
•-group:根据文件所属组寻找文件
•-name:根据文件名寻找文件
•-perm:根据文件权限寻找文件
•-size:根据文件大小寻找文件
•-type:根据文件类型寻找文件,参数对应c、b、l、f、d
find的表达式使用通配符时需要使用“”圈界。例如:
[kevinz@stationXX kevinz] $ find . -name “*.html”

find 操作找到的文件
当使用-exec 指令时,{} \ ; 必须一同添加
例如:
[kevinz@stationXX kevinz] $find . -exec ls
{} \;
当操作指令需要征询用户意见,可以添加-ok自动回答‘是’
例如:
[kevinz@stationXX kevinz] $find . -ok rm {} \;
文章评论

共有 0 条评论