which:您能查看PATH 中是否有给定程序, -a 标志,它使which 向您显示您的PATH 中给定程序的所有实例。
$ which ls
/usr/bin/ls
$ which -a ls
/usr/bin/ls
/bin/ls
whereis:如果您不只对程序位置感兴趣,而且想要找到更多信息,那么可以尝试whereis 程序。
$ whereis ls
ls: /bin/ls /usr/bin/ls /usr/share/man/man1/ls.1.gz
locate:用于查找文件,它比find命令的搜索速度快,它需要一个数据库,这个数据库由每天的例行工作(crontab)程序来建立。当我们建立好这个数据库后,就可以方便地来搜寻所需文件了。即先运行updatedb(无论在那个目录中均可,可以放在crontab中 )后,在 /var/lib/slocate/ 下生成 slocate.db 数据库。
例如:查找相关字issue
$ locate issue
/etc/issue
/etc/issue.net
/usr/man/man5/issue.5
/usr/man/man5/issue.net.5
find:通过使用多种搜索标准,您能搜索您想要的任何文件。
-regex :将把输出限制成匹配某一模式的文件名
-iname :不区分大小写的搜索
-type:b (块设备)、c(字符设备)、d(目录)、p(命名管道)、f(常规文件)、l(符号链接)和s(套接字)
-size:b(512 字节的块)、c(字节)、k(千字节)和w(2 字节的字),在前放置加号(“大于”)或者减号(“小于”)
Note: find 要求指定的正则表达式与整个路径匹配,而不只是该路径的一部分。为此,指定前导和尾随的.* 是必要的
[user@node shuai]$ find . -type f -size -50c -iname "*.log"