1. 程式人生 > >Linux下比find快N倍的檔案查詢命令

Linux下比find快N倍的檔案查詢命令

使用linux作業系統的人,一般都用過檔案查詢命令find,在檔案數量非常龐大的時候,比如在高通的android工程專案中,目錄大小有十幾個G,檔案數量非常多,用find命令就太慢了。
下面介紹一個比find快得多的命令,搜尋任何檔案幾乎都能在一秒內返回,時間複雜度O(1)

mlocate
這個命令的原理是,先為檔案系統建立索引資料庫,mlocate只是搜尋索引,所以速度快
準備工作:建立資料庫(建立索引)
sudo updatedb          只有root許可權才能執行,他會掃描整個系統,為整個系統建立索引,資料庫在/var/lib/mlocate/mlocate.db 這個過程會比較慢,可以在中午或晚上跑一下,執行完了上面的命令就可以使用mlocate搜尋檔案了
使用命令
mlocate  abc.txt mlocate  -ie  abc.txt          如果 abc.txt已經刪除了,使用-e會檢查檔案是否真實存在,而不必updatedb;-i,忽略大小寫 mlocate  /etc/*profile          在/etc中查詢類似profile的檔案
注意
:對於新增檔案應該先updatedb更新資料庫,否則就搜不到,當然更新索引時,執行updatedb還是比較快的

相關推薦

LinuxfindN檔案查詢命令

使用linux作業系統的人,一般都用過檔案查詢命令find,在檔案數量非常龐大的時候,比如在高通的android工程專案中,目錄大小有十幾個G,檔案數量非常多,用find命令就太慢了。下面介紹一個比f

易學筆記--從0開始學JAVA(個人純手工筆記共享 免費!免費!免費!)--直接看書N的速度掌握知識點--總共19章(更新完畢)

易學筆記--從0開始學JAVA(個人純手工筆記共享 免費!免費!免費!)--比直接看書快N倍的速度掌握知識點--第1章 物件導論 易學筆記--從0開始學JAVA(個人純手工筆記共享 免費!免費!免費!)--比直接看書快N倍的速度掌握知識點--第2章 一切都是物件 易學筆記--從0開

linuxfind檔案查詢命令與grep檔案內容查詢命令

  在使用linux時,經常需要進行檔案查詢。其中查詢的命令主要有find和grep。兩個命令是有區的。   區別:(1)find命令是根據檔案的屬性進行查詢,如檔名,檔案大小,所有者,所屬組,是否為空,訪問時間,修改時間等。                 

linuxfind與grep檔案內容查詢命令

1.作用 Linux系統中grep命令是一種強大的文字搜尋工具,它能使用正則表示式搜尋文字,並把匹 配的行打印出來。grep全稱是Global Regular Expression Print,表示全域性正則表示式版本,它的使用許可權是所有使用者。 2.格式 grep [options] 3.主要引數 [o

linux使用find xargs grep查詢檔案檔案內容

1,在某個路徑下查檔案。 在/etc下查詢“*.log”的檔案 find /etc -name “*.log” 2,擴充套件,列出某個路徑下所有檔案,包括子目錄。 find /etc -name “*” 3,在某個路徑下查詢所有包含“hello abcserve

Linux通過find命令進行rm文件刪除的小技巧

ase test sysconfig ger sdn tun 執行過程 fun alt 我們常常會通過find命令進行批量操作。如:批量刪除舊文件、批量改動、基於時間的文件統計、基於文件大小的文件統計等。在這些操作其中,因為rm刪除操作會導致文件夾結構變化,

荷蘭研究人員提突破性想法:用紅外線傳輸網絡_WiFi100

速度 光纖 不同 顯示 cli 很快 紅外 十倍 網絡 原文地址 這年頭咱們去餐館吃飯、商場購物,最喜歡的就是蹭個免費Wi-Fi,省流量不說,速度也是杠杠的沒得噴(當然也有因同時連接人數過多速度卡成狗的,但和免費相比這些都可以忍受了吧)。 在光纖入戶,獨享10M、20M、3

linuxfind文件查找命令與grep文件內容查找命令

option 計數 user 用戶 org emp find命令 gpo .html 在使用linux時,經常需要進行文件查找。其中查找的命令主要有find和grep。兩個命令是有區的。   區別:(1)find命令是根據文件的屬性進行查找,如文件名,文件大小,所有者,所屬

MySQL60 redis從入門到精通視頻教程

redis Mysql 分布式數據庫 Redis是一個開源的使用ANSI C語言編寫、支持網絡、可基於內存亦可持久化的日誌型、Key-Value數據庫,並提供多種語言的API。 學習視頻下載地址:https://pan.baidu.com/s/17NO3pG9hRL-RtU0bwaTylw Red

Protobuf有沒有JSON5?用代碼來擊破pb性能神話

字段名 觀點 5.1 mod 就會 skip 高速 div ngs 轉 http://www.sohu.com/a/136487507_505779 2017-04-26 07:58 程序設計 /58 /技術 導讀:Google 的 Protocol Buffers 在

Linux 的兩個特殊的檔案 -- /dev/null 和 /dev/zero 簡介及對比

1、概論 -- 來自維基的解釋 /dev/null  : 在類Unix系統中,/dev/null,或稱空裝置,是一個特殊的裝置檔案,它丟棄一切寫入其中的資料(但報告寫入操作成功),讀取它則會立即得到一個EOF。在程式設計師行話,尤其是Unix行話中,/dev/null 被稱為位桶(bit

linux兩臺主機互傳檔案

假設主機B:[email protected] 1.從本機傳至另一臺主機B $ scp [引數] [檔案地址+名字] [email protected]:[要儲存的位置] 此時輸入密碼即可 2.從主機B傳到本機 $ scp [引數] [email&#

linuxtouch的運用以及在linux建立可執行的.sh檔案

linux的touch命令不常用,一般在使用make的時候可能會用到,用來修改檔案時間戳,或者新建一個不存在的檔案。 1.命令格式: touch [選項]... 檔案... 2.命令引數: -a   或--t

Selenium100的方法爬東方財富網財務報表

之前,我們用Selenium成功爬取了東方財富網的財務報表資料,但是速度非常慢,爬取70頁需要好幾十分鐘。為了加快速度,本文分析網頁JavaScript請求,找到資料介面然後快速爬取財務報表資料。 1. JavaScript請求分析   接下來,我們深入分析。首先,點選報

Linux】比較幾個檔案查詢命令 find-locate-whereis-which

Linux中的檔案查詢命令很多,今天先學習一下find、locate 、whereis、which。 先看一下這幾個命令的主要區別: linux命令中find、locate 、whereis、which均可用來查詢檔案,主要區別有: find是最常用和最強大的查詢命令

Linux自動清理超過指定大小檔案

  掃描某個目錄下的檔案,發現超過指定大小即清空 1)掃描目錄下的檔案 2)判斷檔案大小 3)清空大於指定檔案的內容   以byte為單位顯示檔案大小,然後和20M大小做對比. 20M換算成位元組為20971520這裡判斷是否大於20M,大於則使用echo 語句將對應檔案置空   20M=20 *

macos\Linux使用fcrackzip破解zip壓縮檔案密碼

加密解密:http://www.lybbn.cn/data/datas.php?yw=133 1.fcrackzip簡介   fcrackzip是一款專門破解zip型別壓縮檔案密碼的工具,工具小巧方便、破解速度快,能使用字典和指定字符集破解,適用於linux、mac osx 系

Linux以當前日期重新命名檔案

[email protected]:/home/test/file_2# mv 1 `date "+%Y-%m-%d-%H:%M:%S"` [email protected]:/home/test/file_2# ls 1.c 2018-11-14-18:08:47

Python的執行速度慢!這點是公認的,加上這操作N!你信嗎?

  開箱即用的Numba使用以下方法: 作業系統:Windows(32位和64位),OSX和Linux(32位和64位) 架構:x86,x86_64,ppc64le。 在armv7l,armv8l(aarch64)上進行實驗。 GPU:Nvidia CUDA

MySQL6 深度解析國內首個雲原生資料庫POLARDB的“王者榮耀”

隨著移動網際網路、電子商務的高速發展,被使用最多的企業級開源資料系統MySQL面臨著巨大挑戰——為迎接“雙11"的高併發要提前做好分庫分表;使用者不斷激增要將讀寫分離才能應對每天上億次的訪問,但讀寫分離後會導致資料同步延時嚴重、分散式事務複雜且效率低下、資料庫可用性下降、MySQL的3T容量瓶頸等一系列問題都