文件搜索locate、which、whereis、grep
視頻鏈接
1 locate
語法:
locate 文件名名稱
locate -i 文件名稱 忽略大小寫
返回絕對路徑
優點:
在文件資料庫 /var/lib/mlocate/mlocate.db 中搜索,耗費系統資源少,適合快速搜索配置文件,系統文件
這個數據庫中含有本地所有文件信息。Linux系統自動創建這個數據庫,並且每天自動更新一次,因此,我們在用whereis和locate 查找文件時,有時會找到已經被刪除的數據,或者剛剛建立文件,卻無法查找到,原因就是因爲數據庫文件沒有被更新。爲了避免這種情況,可以在使用locate之前,先使用updatedb命令,手動更新數據庫。整個locate工作其實是由四部分組成的:
- /usr/bin/updatedb 主要用來更新數據庫,通過crontab自動完成的
- /usr/bin/locate 查詢文件位置
- /etc/updatedb.conf updatedb的配置文件
- /var/lib/mlocate/mlocate.db 存放文件信息的文件
缺點:
(1)不能實時搜索(find 是實時搜索),必須更新文件資料庫後才能找到剛建立的文件
解決方法:updatedb
(2)有些目錄不在文件資料庫的搜索範圍內,比如/tmp臨時文件目錄
2 which
which 命令名稱
顯示命令所在目錄及別名信息
3 whereis
whereis 命令名稱
顯示命令所在目錄及幫助文檔位置
4 grep
查找文件裏面的內容
語法:grep 搜索得字符串 文件位置
查找/etc/ininttab中multiuser 中所在得行
grep multiuser /etc/inittab
不區分大小寫
grep -i multiuser /etc/inittab
屏蔽以#開頭的行 反向查找
grep -v ^# /etc/inittab
只查看yum.conf中非註釋的行
[root@localhost etc]# grep -v ^# yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release