All things are difficult before they are easy. 没有软件的裸机是一具僵尸,没有硬件的软件是一个幽灵。2012,专注于Linux和C语言,关注自动化、性能测试,关注开源社区和开源测试工具、方法,尝试测试团队管理!
Linux搜索文件常用命令
上一篇 /
下一篇 2009-10-08 01:09:40 / 天气: 晴朗
/ 心情: 高兴
/ 个人分类:Linux
搜索文件概念有两种,一种是搜索文件名,另一种是在一个文件中搜索指定的内容。当然还有一种,可以是用桌面搜索,像windows中的本地文件搜索一样,我说知道的有Google提供了桌面搜索的Linux版本的(还没用过,没发言权,哈哈)本文仅仅讨论在命令方式下的搜索吧。1.通过文件名来查找文件:1.1findfind 路径 -name 文件名举例:比如在/etc中搜索vsftpd.conf文件;[root@localhost ~]# find /etc -name vsftpd.conffind 是最强劲的搜索工具,用法也比较灵活,而不是仅仅找一个文件名这个功能,其他功能可以man find.1.2locatelocate 是用来通过文件名搜索文件的工具,它的用法也比较简单。locate 的应用,首先要通过updatedb建立索引数据库,然后才能应用;如果您新安装了软件或者存放了新的文件,也要先运行updatedb命令,以生成最新索引库。用法:locate 文件名如果还从未建立索引库,要先运行updatedb;[root@localhost ~]# updatedb1.3whereis 和which1.3.1 whereiswhereis 是来寻找命令的二进制文件,同时也会找到其帮助文件;例如想查找locate命令在哪里,使用如下命令:master@master-KUbuntu:~$ whereis locate结果是locate: /usr/bin/locate /usr/share/man/man1/locate.1.gz1.3.2 whichwhich与whereis功能类似,但它只是在我们设置的环境变量$PATH路径中搜索,且不会找帮助文件。例如:master@master-KUbuntu:~$ which locate结果是 /usr/bin/locate2.通过文件中的内容来搜索文件2.1 grep grep smile ~/temp -r该命令作用是,在$HOME/temp目录下查找内容中包含smile的文件。 smile是pattern,如果含有特殊字符则要加上引号。 ~/temp是搜索的范围(目录), -r 是option,表示所有的文件,且对子目录递归, 但是用了这个,就不能指定*.txt之类的参数了。但可这样作:grep smile ~/temp/*.txt 来达到仅仅搜索.txt文件的目的2.2 find ++ grepfind与grep配合使用也是可以达到效果的。如:find ~/temp -name "*.txt" -exec grep "smile" {} -nH \;上面包括最后的(;)都是命令的一部分,语法比较复杂,不解释了(我也现还不能解释得很清楚,呵呵),自己可以man一下find、grep吧。其他相关资料:
http://www.linuxsir.org/main/?q=node/208
http://360doc.com/content/061108/16/4546_253323.html
http://blog.chinaunix.net/u1/34513/showart_311481.html
相关阅读:
- Linux系统管理入门必须经历的三步 (xin_晴, 2010-10-19)
- Linux测试环境搭建的学习建议 (xin_晴, 2010-10-20)
- Linux初学者最常遇到的五个问题 (xin_晴, 2010-10-21)
- 十五个常用Linux命令行总汇 (xin_晴, 2010-10-22)
- 从开发者的角度学习Linux内存管理 (xin_晴, 2010-10-25)
- 教会你Linux Shell自动交互的三种方法 (xin_晴, 2010-11-16)
- Linux系统学习方法论 (xin_晴, 2010-10-27)
- 把你的Linux变成无线基站服务器 (xin_晴, 2010-10-28)
- Linux 内存监控内存丢失和处理方法 (xin_晴, 2010-10-29)
- Linux IPC资源清理 (smile665, 2010-10-31)
收藏
举报
TAG:
命令
搜索
find
Linux
shell
Shell