locate和find:兩個查找文件的命令
locate:該命令在運行時需要後台索引的數據庫作為支撐,在 Ubuntu 中這個數據庫文件位於 /var/cache/locate/locatedb。一般來說,這個數據庫文件每天是通過 cron 自動更新的。如果不幸沒有得到更新,那麼可以執行 sudo updatedb 來手動更新。
假如我想要在系統中查找一個名為 linux.html 的文件,那麼可以這樣執行命令:locate linux.html。locate 搜索文件的速度很快,一會兒就會把結果列出來。locate 有一個十分有用的選項 -r,它可以讓你在搜索文件時使用正則表達式。
find:這是另一個 Linux 系統中重要的文件查找命令。find 命令的功能很強大,其一般使用方法為:find 位置 -name 文件名稱。例如,我要在 / 這個根目錄中查找 linux.html 文件,可以執行 find / -name linux.html。
你除了可以按文件名稱來使用 find 查找文件外,也可以根據文件大小(通過 -size n 選項指定)、時間(如 -atime n 表示查找 n 天前訪問過的文件)來搜索文件。 此外,find 命令同樣支持在搜索文件時使用正則表達式,你只需指定 -regex 選項即可。