Linux查找文件

which 可以查找可执行文件的位置

1
2
evilxr@IdeaPad:~$ which ping
/bin/ping


 

whereis

whereis -m 可查询到命令的帮助文档在什么地方

1
2
3
4
evilxr@IdeaPad:~$ whereis -m ls
ls: /usr/share/man/man1/ls.1.gz
evilxr@IdeaPad:~$ whereis -m pwd
pwd: /usr/share/man/man1/pwd.1.gz

 

1
2
evilxr@IdeaPad:~$ whereis pwd
pwd: /bin/pwd /usr/include/pwd.h /usr/share/man/man1/pwd.1.gz

 输出信息有三条
1.命令本身所在目录
2.其源文件所在目录
3.其帮助文档所在目录


locate 基于本地计算机数据库(计算机磁盘信息),速度比find快些。locate一般是在晚上更新数据库,但是也可以自己手动更新

1
root@IdeaPad:~# sudo updatedb
1
2
3
4
5
6
7
8
root@IdeaPad:~/test# ls
1.txt  2.txt  aa.tar.gz  ab.tar.bz2  ac.tar  ac.tar.bz2  ac.tar.gz
root@IdeaPad:~/test# locate aa.tar.gz
/root/test/aa.tar.gz
root@IdeaPad:~/test# cd /tmp
root@IdeaPad:/tmp# locate aa.tar.gz
/root/test/aa.tar.gz
root@IdeaPad:/tmp#

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
创建一个新文件,用locate试试~
root@IdeaPad:~/test# touch aobama
root@IdeaPad:~/test# ed aobama
0
a
我是新创建的文件,
看下locate命令能找到我么~
.
w
63
q
root@IdeaPad:~/test# locate aobama
root@IdeaPad:~/test#
结果找不到~

 

1
2
3
4
5
更新数据库后看下:
@IdeaPad:~/test# sudo updatedb
root@IdeaPad:~/test# locate aobama
/root/test/aobama
root@IdeaPad:~/test#

 

find 命令 全盘扫描,类似windows的查找;速度比较慢

find可以基于文件名查找

1
2
3
4
5
6
root@IdeaPad:~# find ./ -name ‘te*‘
./test
root@IdeaPad:~# find ./ -name ‘1*‘
./test/1.txt
./1.txt
root@IdeaPad:~#

 

Linux查找文件,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。