2014-12-15

Ubuntu 用 du 和 sort 指令找出大檔案

關於用指令來找出大檔案這件事,阿舍是常常會需要用到,尤其,是在阿舍的 VPS 的硬碟空間突然變少很多的時候,可是,阿舍每次只記得有用到 sort 這個指令,然後,就常常忘了另一個指令是那一個,然後,就懶得再想,就只好手動動慢慢找,還好,常常會出問題的,也就是 var 資料夾下的那幾個檔案哩 !  ....

阿舍是覺得指令似乎比圖型軟體來的快些哩 ! ( Credit Thevarguy )

不過,阿舍今天心血來潮,就想去把那另一個指令給出來哩 ! ( 其... 其實是因為出問題的檔案不在 var 裡哩 ! 所以,不得不去找出來哩 ! ... 呵呵 .. ^^!!),所以,這次阿舍就把它寫下來,以後要用就方便些,順便提供大家參考囉 ! (指令如下,以從根目錄搜尋為例的哩 !  ... )

sudo du -h / | sort -h -r | more 

阿舍的用法,是先用 du 指令 從根目錄來算出各個資料夾的總量,之後,再給 sort 指令來做反相排序 ( 由大到小 ),接著,阿舍再到第一名的資料夾裡去看看有沒有檔案的大小是很大的,如果沒有,那就在那個資料夾再執行一次指令來找出吃掉硬碟空間的那個資料夾,然後,再進那個資料夾來查看,就這樣重複這個動作,直到阿舍找出檔案為止哩 !

如果不指定資料夾的話,du 指令就會直接只計算你所在的資料夾,所以,如果你想要找出家目錄裡的大檔案的話,就可以像下面的指令一樣,不指定資料夾路徑,就可以排出來了哩 !

cd 
du -h | sort -h -r 

要注意的是,如果你是要計算和排序家目錄以外的資料夾的話,就要加上 sudo 指令才行,否則,就會出現一堆 Permission Denied 的訊息哩 !  另外,排序出來的路徑有可能是會在同一個資料夾裡的不同層的,因此,先仔細看下結果再行動,可能可以幫助你更快的找到目標資料和檔案哩 ( 註,阿舍知道 du 有個 --max-depth 的參數可減少搜尋的資料夾深度,不過,阿舍覺得,不加的效果會比加的結果讓阿舍更容易找到大尾的檔案哩 ! ... 呵 ! )


推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁