Locate

找到特定文件夾

  • March 18, 2020

我想在我的伺服器上找到所有以“wordpress-seo”結尾的文件夾。

我嘗試了find命令,但它需要的時間太長。

sudo  find /home/w/s -type d -name 'wordpress-seo'

現在我正在嘗試locate命令,但它返回所有具有 wordpress-seo 的路徑。

a/wp-content/plugins/wordpress-seo
a/wp-content/plugins/wordpress-seo/languages/
...
...

我想排除wordpress-seo/*文件和文件夾。我只想要文件夾名稱。IE

a/wp-content/plugins/wordpress-seo
b/wp-content/plugins/wordpress-seo

嘗試正則表達式沒有任何運氣。

locate -r '/\w+wordpress\-seo/b'
OR
locate '/*/wordpress-seo/'

有什麼幫助嗎??

試試這個:

locate -r "wordpress-seo$"

雖然我應該提到,它find提供了巨大的選擇變化locate。您發現速度更快,因為它只是在每次搜尋文件時locate從數據庫中讀取,只要您給它一些搜尋內容。/var/lib/mlocate/mlocate.db``find

locate的數據庫cron每天更新一次,您也可以隨時通過以下方式手動更新數據庫:

sudo updatedb

這將使每日cron更新後創建的文件在locate數據庫中可用,因此您可以通過locate. 還要檢查配置文件/etc/updatedb以查看哪些文件系統、路徑被排除在外。

引用自:https://unix.stackexchange.com/questions/190798