查找命令find-whereis-which-type

查找命令find-whereis-which-type

find命令

find的使用格式如下:

$ find <指定目录> <指定条件> <指定动作>

- <指定目录>: 所要搜索的目录及其所有子目录。默认为当前目录。

- <指定条件>: 所要搜索的文件的特征。

- <指定动作>: 对搜索结果进行特定的处理。

如果什么参数也不加,find默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。


find的使用实例:

$ find . -name 'my*'

搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文件。

$ find . -name 'my*' -ls

搜索当前目录中,所有文件名以my开头的文件,并显示它们的详细信息。

$ find . -type f -mmin -10

搜索当前目录中,所有过去10分钟中更新过的普通文件。如果不加-type f参数,则搜索普通文件+特殊文件+目录。


1.通过文件名来查找    

[root@dell1 ~]# find / -name my.cnf    
/etc/my.cnf

2.通过文件名来查找    

[root@dell1 etc]# find / -name 'my.cnf'    
/etc/my.cnf

3.根据部分文件名查找方法  

[root@dell1 etc]# find /etc/ -name '*init*'    
/etc/festival/siteinit.scm    
/etc/sysconfig/network-scripts/init.ipv6-global    
/etc/sysconfig/init    
/etc/pam.d/run_init    
/etc/security/namespace.init    
/etc/inittab


whereis命令

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

whereis命令的使用实例:

$ whereis grep

1.使用whereis  

[root@dell1 etc]# whereis grep    
grep: /bin/grep /usr/share/man/man1/grep.1.gz /usr/share/man/man1p/grep.1p.gz


which命令

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。  
也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

which命令的使用实例:

$ which grep    

1.使用which命令  

[root@dell1 etc]# whereis grep    
grep: /bin/grep /usr/share/man/man1/grep.1.gz /usr/share/man/man1p/grep.1p.gz    
[root@dell1 etc]# which grep    
/bin/grep
[root@dell1 etc]# which mysql   
/usr/bin/which: no mysql in (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/root/bin)


type命令

type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用-p参数,会显示该命令的路径,相当于which命令。

type命令的使用实例:

$ type cd

系统会提示,cd是shell的自带命令(build-in)。

$ type grep

系统会提示,grep是一个外部命令,并显示该命令的路径。

$ type -p grep

加上-p参数后,就相当于which命令。

使用type命令:  

[root@dell1 etc]# type cd     
cd is a shell builtin    
[root@dell1 etc]# type grep    
grep is hashed (/bin/grep)

====END====

你可能感兴趣的:(查找命令find-whereis-which-type)