Linux上查詢最大檔案的 3 種方法

2022-03-22 07:10:18 字數 1578 閱讀 2762

有時候我們在系統上安裝了數十個應用程式,隨著使用時間的推移,許多檔案變得越來越大,從而導致磁碟空間越來越小。那麼問題來了,如何找到系統上這些大檔案,然後進行一番磁碟空間清理呢,這篇文章就此介紹幾種查詢大檔案的方法。注意:僅限於linux系統。

最簡單的方法就是借助 ls 命令,因為 ls 命令本身輸出是帶檔案大小資訊的。

比如,我要列出 /bin 目錄中的 5 個最大檔案,可以:

ls -lsh /bin | head -5

find 本身就是查詢命令,可以遞迴查詢乙個目錄的子目錄,所以用它是自然的。

比如,查詢 / 目錄下最大的乙個檔案:

sudo find / -type f -printf 「%s\t%p\n」 | sort -n | tail -1

如果要找前 10 個大檔案呢,可以這樣:

$ find $home -type f -printf 『%s %p\n』 | sort -nr | head -10

也可以使用 -size 選項來查詢,以下命令將顯示大於100mib(注意不是100mb,mib和mb的區別,emmm)的所有檔案:

find / -size +100m-ls

也可以查詢乙個區間大小的(比如 100mib 和 200mib )之間的檔案:

find / -size +100m-size -200m-ls

最後,下面這個命令也比較常用,查詢某個目錄最大的5個檔案:

find $directory -type f -exec ls -s {} \; | sort -n | tail -n 5

補充一點,find 也可以查詢最近的檔案:少於或等於n天(-ctime -n)的檔案或屬於特定使用者(-user mrlinus)的檔案。

du 命令可以檢視磁碟空間的使用情況,自然也可以用來檢視磁碟上占用空間較多的檔案和資料夾。

比如,查詢 /home 下前 20 個最大的檔案:

sudo du -a /home | sort -n -r | head -n 20

查詢當前資料夾中最大的 10 個目錄:

sudo du -a | sort -n -r | head -n 10

如果要顯示可讀的kb、mb、gb資訊,可以加上 -h 引數:

du -hs * | sort -rh | head -n 10

查詢最大目錄/檔案(包括子資料夾):

du -sh| sort -rh | head -n 10

如果只看大小在 gb 範圍內的所有檔案,可以同時使用 du 命令和 grep 命令:

du -h -a /dir | grep 「[0-9]g\b」

ok,以上便是 3 種 linux 系統上查詢大檔案的方法,希望大家都能掌握。

Linux查詢大檔案

有時候我們在系統上安裝了數十個應用 最簡單的方法就是借助 ls 命令,因為 ls 命令本身輸出是帶檔案大小資訊的。比如,我要列出 bin 目錄中的 5 個最大檔案,可以 ls lsh bin head 5 find 本身就是查詢命令,可以遞迴查詢乙個目錄的子目錄,所以用它是自然的。比如,查詢 目錄下...

linux 查詢大檔案

linux作業系統中,經常會遇到磁碟空間滿的問題。遇到這樣的問題,先查下是什麼檔案過大或過多引起的,至於引起這個更深一層的原因,先不 怎麼檢視大檔案所在的路徑,linux中有乙個命令,叫du,先貼命令 du m max depth 1或du h max depth 1 du 用於統計linux中檔案...

修改Linux最大檔案描述符(最大檔案控制代碼數)

大家知道在linux伺服器大併發調優時,往往需要預先調優linux引數,其中修改linux最大檔案控制代碼數是最常修改的引數之一。root mongodb11 ulimit a core file size blocks,c 0 data seg size kbytes,d unlimited sc...