Find

為什麼連續查找命令更快?

  • February 2, 2022

我注意到find <dir> -depth第一次在目錄上使用時,它消耗了很多時間,但下一次即使搜尋不同的模式,它似乎也很快。

為什麼會這樣,甚至可以進一步使用這種行為來獲得更好的性能嗎?

當您第一次鍵入find命令時,作業系統必須從磁碟中獲取子目錄資訊。第二次鍵入相同的命令時,您從記憶體中獲取數據,速度更快。

如果您使用不同的模式過濾輸出,find即使只有一些條目與模式匹配,也會完全讀取每個目錄。然後記憶體將充滿其他模式所需的資訊。

但是,如果您使用系統一段時間,記憶體記憶體可以用於其他目的……那麼相同的find命令可能必須再次從磁碟取回數據,並且可能與第一次一樣慢。如果要限制重複使用高速記憶體記憶體的風險,則必須添加記憶體。

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