Linux中查看磁碟大小、文件大小、排序方法小結

来源:https://www.cnblogs.com/zmdComeOn/archive/2020/06/29/13208341.html

一,查看磁碟空間大小的命令:df df命令用於查看磁碟分區上的磁碟空間,包括使用了多少,還剩多少,預設單位是KB 命令: df -hl 結果如下: 結果每列的含義: 第一列Filesystem,磁碟分區 第二列Size,磁碟分區的大小 第三列Used,已使用的空間 第四列Avail,可用的空間 第五 ...


一,查看磁碟空間大小的命令:df

df命令用於查看磁碟分區上的磁碟空間,包括使用了多少,還剩多少,預設單位是KB

命令:

df -hl

結果如下:

 

 結果每列的含義:

第一列Filesystem,磁碟分區

第二列Size,磁碟分區的大小

第三列Used,已使用的空間

第四列Avail,可用的空間

第五列Use%,已使用的百分比

第六列Mounted on,掛載點

解釋一下後面的h和l參數,h是把顯示的單位改成容易辨認的單位,不再是預設的KB了,而l參數表示只顯示本地磁碟分區,不包含的分區比如其他伺服器共用的磁碟。

如果我們去掉l參數:

df -h

執行結果如下:  

 

 可以看到,和帶著l參數的命令相比,執行的結果多了最下麵一行,那是其他伺服器的共用目錄

下麵附上df命令的全部參數使用說明:

-a或--all:包含全部的文件系統;
--block-size=<區塊大小>:以指定的區塊大小來顯示區塊數目;
-h或--human-readable:以可讀性較高的方式來顯示信息;
-H或--si:與-h參數相同,但在計算時是以1000 Bytes為換算單位而非1024 Bytes;
-i或--inodes:顯示inode的信息;
-k或--kilobytes:指定區塊大小為1024位元組;
-l或--local:僅顯示本地端的文件系統;
-m或--megabytes:指定區塊大小為1048576位元組;
--no-sync:在取得磁碟使用信息前,不要執行sync指令,此為預設值;
-P或--portability:使用POSIX的輸出格式;
--sync:在取得磁碟使用信息前,先執行sync指令;
-t<文件系統類型>或--type=<文件系統類型>:僅顯示指定文件系統類型的磁碟信息;
-T或--print-type:顯示文件系統的類型;
-x<文件系統類型>或--exclude-type=<文件系統類型>:不要顯示指定文件系統類型的磁碟信息;
--help:顯示幫助;
--version:顯示版本信息。

二,查看文件和目錄大小的命令:du

du是用來查看文件和目錄大小用的,和df略有區別

1,比如要看/data目錄的總大小,可以用以下命令:

du -sh /data

執行果如下:

 

 或者進到/data目錄後直接執行:

du -sh

執行結果如下:

其中的-s參數就是查看總大小(區別於查看其中每個目錄的大小),而-h參數是把預設的單位KB改為比較好辨認的單位。

2,如果要看/data目錄下各個子目錄的大小,包括子目錄的子目錄,但不包含/data下文件,可以用以下命令:

du -h

執行結果如下:

註:該命令不包含/data目錄下的文件大小  

3,如果要看/data目錄下各個子目錄的大小,包括子目錄的子目錄,且包含/data下文件,可以用以下命令:

du –h *

執行結果如下:

4,如果要看/data目錄下各個子目錄的大小,不包括子目錄的子目錄,可以用以下命令:  

du -sh *

執行結果如下:

5,如果要看/data目錄下各個子目錄和文件的大小,需要使用-a參數:

du -ah

命令執行結果如下:

下麵附上du命令的參數使用說明:

-a或-all 顯示目錄中個別文件的大小。
-b或-bytes 顯示目錄或文件大小時,以byte為單位。
-c或--total 除了顯示個別目錄或文件的大小外,同時也顯示所有目錄或文件的總和。
-k或--kilobytes 以KB(1024bytes)為單位輸出。
-m或--megabytes 以MB為單位輸出。
-s或--summarize 僅顯示總計,只列出最後加總的值。
-h或--human-readable 以K,M,G為單位,提高信息的可讀性。
-x或--one-file-xystem 以一開始處理時的文件系統為準,若遇上其它不同的文件系統目錄則略過。
-L<符號鏈接>或--dereference<符號鏈接> 顯示選項中所指定符號鏈接的源文件大小。
-S或--separate-dirs 顯示個別目錄的大小時,並不含其子目錄的大小。
-X<文件>或--exclude-from=<文件> 在<文件>指定目錄或文件。
--exclude=<目錄或文件> 略過指定的目錄或文件。
-D或--dereference-args 顯示指定符號鏈接的源文件大小。
-H或--si 與-h參數相同,但是K,M,G是以1000為換算單位。
-l或--count-links 重覆計算硬體鏈接的文件。

三,排序命令,sort

sort命令可以用於將文件內容排序並輸出,也可以用於將某些查詢命令的執行結果排序後輸出

比如要將文件夾中的文件按大小排序,可以用以下命令:

du -a|sort -rn

執行結果如下:

管道前面的du –a就是列出目錄下所有的文件和目錄的大小,後面的sort命令就是排序。

其中-r參數代表反向排序,因為sort預設是從小到大排序的,加-r是從大到小排序

-n代表按照數字排序,只認數字不認單位,本例中的數字就是文件大小,單位是預設的KB,所以這個命令不能用du -ah,這會使排序結果出現2M小於100K的情況。


附上sort命令各參數的使用說明:  

-b:忽略每行前面開始出的空格字元;
-c:檢查文件是否已經按照順序排序;
-d:排序時,處理英文字母、數字及空格字元外,忽略其他的字元;
-f:排序時,將小寫字母視為大寫字母;
-i:排序時,除了040至176之間的ASCII字元外,忽略其他的字元;
-m:將幾個排序號的文件進行合併;
-M:將前面3個字母依照月份的縮寫進行排序;
-n:依照數值的大小排序;
-o<輸出文件>:將排序後的結果存入制定的文件;
-r:以相反的順序來排序;
-t<分隔字元>:指定排序時所用的欄位分隔字元;
+<起始欄位>-<結束欄位>:以指定的欄位來排序,範圍由起始欄位到結束欄位的前一欄位。

由參數可見sort命令主要還是用於文件內容輸出的

四,只顯示前幾行的命令,head

head命令可以用於顯示文件的前幾行,也可以用於顯示某些查詢命令結果的前幾行

比如要將文件夾中的文件按大小排序,而且只看最大的幾個,可以用以下命令:

du -a|sort -rn|head -5

執行結果:

head後面的-5表示顯示前5行,不加數字則預設顯示前10行

附上head命令各參數的使用說明:

-n<數字>:指定顯示頭部內容的行數;
-c<字元數>:指定顯示頭部內容的字元數;
-v:總是顯示文件名的頭信息;
-q:不顯示文件名的頭信息。

 

 

參考轉自:https://blog.csdn.net/lkforce/article/details/80917306


您的分享是我們最大的動力!

更多相關文章
  • 相信很多朋友對於邏輯式編程語言,都有一種最熟悉的陌生人的感覺。一方面,平時在書籍、在資訊網站,偶爾能看到一些吹噓邏輯式編程的話語。但另一方面,也沒見過周圍有人真正用到它(除了SQL)。 本系列將儘可能簡潔地說明邏輯式編程語音的原理,並實現一門簡單的邏輯式編程語言。考慮到C#的用戶較多,因此選擇用C#... ...
  • 0.前言 通過前面幾篇,我們瞭解到瞭如何實現項目的基本架構:數據源、路由設置、加密以及身份驗證。那麼在實現的時候,我們還會遇到這樣的一個問題:當我們業務類和數據源越來越多的時候,我們無法通過普通的構造對象的方法為每個實例進行賦值。同時,傳統意義上的賦值遇到底層切換或者其他修改的時候,就需要修改大量的 ...
  • 1.前言 回顧:認證授權方案之JwtBearer認證 在上一篇中,我們通過JwtBearer的方式認證,瞭解在認證時,都是基於Claim的,因此我們可以通過用戶令牌獲取到用戶的Claims,在授權過程中對這些Claims進行驗證,從而來判斷是否具有獲取或執行目標資源操作的許可權。本章就來介紹一下 AS ...
  • 前言 這兩天看了一下ABP,做個簡單的學習記錄。記錄主要有以下內容: 從官網創建並下載項目(.net core 3.x + vue) 項目在本地成功運行 新增實體並映射到資料庫 完成對新增實體的基本增刪改查 ABP官網:https://aspnetboilerplate.com/ Github:ht ...
  • 現在在MCU上實現固件升級(OTA)功能變得越來越普遍,今天我們就來探討一下MCU固件升級(OTA)的幾種快閃記憶體(Flash)劃分方式: 1.獨立型 所謂獨立型就是專門划出一部分快閃記憶體(Flash)空間用來存儲引導程式(BootLoader)。 如下圖,Firmware A區用來固定執行用戶程式。當引導 ...
  • 大家好,我是良許。 Vim是我們在Linux中非常常用的一款文本編輯器。Vim 是一款免費、開源的文本編輯器,它的功能和許多其他的文本編輯器大致相同,比如 Sublime 和 Notepad++ 。Vim既可以在命令行中執行,也可以在圖形界面中操作。 Vim 的教程有很多,本文我們主要講的是如何更改 ...
  • 最近開發項目的時候發現公司伺服器用root賬號登錄的時候 一直會提示有新的信件,一直提示一直提示。 聯想到另一臺伺服器上 的dead.letter文件每天都不斷的變大 而且在 root家目錄里 ,系統硬碟里。過十天半個月就會收到 伺服器的磁碟使用率超90%的報警簡訊, 我突然感覺是時候去除了一下這個 ...
  • 1.文件操作 touch命令 創建文件,如果文件名稱不存在,那麼直接創建;如果存在,那麼更改訪問時間 touch [option] filename1 filename2... [email protected]:~/Test# touch hello.c [email protected]:~/Test# ls hell ...
一周排行
  • 本次課程就正式進入開發部分。 首先我們先搭建項目框架,還是和之前漸進式風格保持一致,除必備組件外,儘量使用原生功能以方便大家理解。 開發工具:vs 2019 或以上 資料庫:SQL SERVER 2017 或以上 其他需要用到的我們在項目過程中再提。 一、新建 MVC項目 1、打開VS 2019,C ...
  • 一.背景說明: 之前分享過一個微服務開發框架, “享一個集成.NET Core+Swagger+Consul+Polly+Ocelot+IdentityServer4+Exceptionless+Apollo+SkyWalking的微服務開發框架”,前兩天在Github上收到一個Issues,是想我 ...
  • 前言 Http我們都已經耳熟能詳了,而關於Http學習的文章網上有很多,各個知識點的講解也可說是深入淺出。然而,學習過後,我們對Http還是一知半解。問題出在了哪? Http是一個客戶機與伺服器之間的通信的協議,真的想學習Http,就必須把客戶機和伺服器也學了,也就是說,必須立體的學習,不然我們永遠 ...
  • 本人製作的這個 “簡易日誌 (SimpleLogger)” 包裡面包含的代碼邏輯,最開始也就是簡單地寫入文本,後來經過實際使用的演化,做了各種優化,添加了一些實用的特性,感覺用著還不錯。正所謂獨樂樂不如眾樂樂,於是將其打包上傳到微軟的包管理庫 NuGet 中,大家可以使用試試,相互交流。 ...
  • 1.需求示意圖 2.需求描述 原本是為了給做unity3d客戶端開發的同事提供不定時的消息推送,比如商城購買道具後服務端將道具信息推送給客戶端。 本篇文章簡化理解,用“相關部門開展活動,向全市人民徵集社會服務改善意見”為例子。但核心想法一致:單向推送(指這個需求上只需要單向)。所以這個功能並不是聊天 ...
  • 找到項目中ServiceStack.Text.dll文件的版本,比如我的版本是5.0.0,到GitHub上下載對應的源碼(https://github.com/ServiceStack/ServiceStack.Text/tags) 打開解決方案,重新生成ServiceStack.Text項目,如果 ...
  • 前言 上一篇文章主要介紹了IL的概念以及基礎的示例代碼,在這一篇文章中我們將通過對象調用看IL。 創建對象與調用方法 class Program { static void Main(string[] args) { var obj = new MyClass(); Console.WriteLin ...
  • abp版本5.9 概述 數據遷移無非就是兩件事情,1、創建資料庫,並根據實體創建對應的表;2、添加一些初始數據 abp的數據遷移也是完成這兩件事,比較特殊的是它是多租戶saas系統,而且支持不同的租戶有獨立的資料庫。所以abp中的遷移要先遷移戶主Host,再遷移租戶Tenant的資料庫 它的遷移定義 ...
  • 本文屬於OData系列 目錄 武裝你的WEBAPI-OData入門 武裝你的WEBAPI-OData便捷查詢 武裝你的WEBAPI-OData分頁查詢 武裝你的WEBAPI-OData資源更新Delta 武裝你的WEBAPI-OData之EDM 武裝你的WEBAPI-OData常見問題 武裝你的WE ...
  • 前言 面試總是會被問到有沒有用過分散式鎖、redis 鎖,大部分讀者平時很少接觸到,所以只能很無奈的回答 “沒有”。本文通過 Spring Boot 整合 redisson 來實現分散式鎖,並結合 demo 測試結果。 首先看下大佬總結的圖 正文 添加依賴 <!--redis--> <depende ...