Linux系統中如何查看磁碟情況

来源:https://www.cnblogs.com/wang_yb/p/18211130
-Advertisement-
Play Games

Linux不像windows系統那樣方便的圖形界面,特別是作為伺服器使用的時候,只有命令行可以使用。 我有個雲伺服器平時用來做一些數據分享用的,最近想看看磁碟和其中文件的占用情況,於是搜索並學習了一些查看磁碟空間信息的命令,命令雖然簡單,但對我自己來說還是有些新的東西值得記錄。 1. df 首先,登 ...


Linux不像windows系統那樣方便的圖形界面,特別是作為伺服器使用的時候,只有命令行可以使用。

我有個雲伺服器平時用來做一些數據分享用的,最近想看看磁碟和其中文件的占用情況,
於是搜索並學習了一些查看磁碟空間信息的命令,命令雖然簡單,但對我自己來說還是有些新的東西值得記錄。

1. df

首先,登錄伺服器用df命令查看磁碟情況:

/home/projects/databook# df .
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/vda1       51420828 14018512  35079240  29% /

輸出包含當前文件系統的磁碟使用情況。

df命令有個-h參數,可以更好的展示磁碟情況:

/home/projects/databook# df -h .
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        50G   14G   34G  29% /

-h參數一般是用來顯示幫助信息的,但是對於df命令,h表示human,也就是以人類易讀的方式顯示。

上面的輸出表示這個磁碟的使用量,包括我的虛擬伺服器上的所有內容——可執行文件、庫和支持文件等等。
總容量 50G,目前只使用了29%,剩餘的還比較充裕。

2. du

接下來,我想看看databook目錄的文件占用情況。這需要使用 du 命令:

/home/projects/databook# du -hd 1 .
24K     ./certs
4.0K    ./download
3.2M    ./admin-ui
2.9M    ./public
108K    ./output
181M    ./upload
472K    ./markdown-files
207M    .

同樣,-h參數表示以人類易讀的方式顯示,-d 1 參數表示 du 只進入一個目錄級別(也就是當前目錄)。

從輸出可以看出,upload目錄稍微大點,其他目錄都還好。
最後一行 207M 是整個目錄占用磁碟的大小。
我希望按照文件/文件夾 占用磁碟空間大小的順序來顯示,這樣可以快速定位到占用空間大的 文件/文件夾

3. du | sort

但是,du命令並沒有按磁碟空間排序的參數,所以嘗試結合 sort 命令來排序。

/home/projects/databook# du -hd 1 . | sort -n
2.9M    ./public
3.2M    ./admin-ui
4.0K    ./download
24K     ./certs
108K    ./output
181M    ./upload
207M    .
472K    ./markdown-files

sort命令的-n參數表示按數字排序,不過文件夾大小不僅有數字,還有單位(比如MK這些)。
所以,這樣排序對我們用處不大。

接著,嘗試所有文件統一用位元組表示,然後在排序:

/home/projects/databook# du -kd 1 . | sort -n
4       ./download
24      ./certs
108     ./output
472     ./markdown-files
2948    ./public
3224    ./admin-ui
184532  ./upload
211112  .

du命令的-k參數表示用位元組表示文件/文件夾的大小。
這樣雖然可以正常排序,但是可讀性差,位元組並不是人類易讀的方式,還是MBGB更好理解。

進一步調查,發現sort命令居然也有-h參數,也是為了讀取人類易讀格式的值。

/home/projects/databook# du -hd 1 . | sort -hr
207M    .
181M    ./upload
3.2M    ./admin-ui
2.9M    ./public
472K    ./markdown-files
108K    ./output
24K     ./certs
4.0K    ./download

這樣就滿足了我查詢磁碟空間的要求。
sort命令的-r參數表示從大到小排序,因為我關註的是大文件,所以想把它們排在前面。

補充:-h參數是在2009年添加到GNU sort 的。


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

-Advertisement-
Play Games
更多相關文章
  • Biwen.Settings 是一個簡易的配置項管理模塊,主要的作用就是可以校驗並持久化配置項,比如將自己的配置存儲到資料庫中,JSON文件中等 使用上也是很簡單,只需要在服務中註入配置, 比如我們有一個GithubSetting的配置項,我們只需要定義好對象然後註入到Service中即可: [De ...
  • .NET中特性+反射 實現數據校驗 在.NET中,我們可以使用特性+反射來實現數據校驗。特性是一種用於為程式中的代碼添加元數據的機制。元數據是與程式中的代碼相關聯的數據,但不直接成為代碼的一部分。通過特性,我們可以為類、方法、屬性等添加額外的信息,這些信息可以在運行時通過反射獲取和使用。 對反射不太 ...
  • 最近有群友咨詢C#如何調用Python?小編嘗試Python.NET過程中遭遇的版本相容性和環境配置難題,小編決定尋找一個更為簡單、穩定且對初學者友好的解決方案。小編搜索一番,除了Python.NET之外,還有其他途徑能夠幫助我們輕鬆地在C#項目調用Python腳本,那就是通過命令行調用,使用 Sy ...
  • C#.Net的BCL提供了豐富的類型,最基礎的是值類型、引用類型,而他們的共同(隱私)祖先是 System.Object(萬物之源),所以任何類型都可以轉換為Object。 ...
  • 添加本地用戶 添加新的本地用戶。 在CUI配置上,按如下方式設置。 使用管理員許可權運行 PowerShell 並按如下方式進行配置。 Windows PowerShell 版權所由 (C) Microsoft Corporation。 保留所有權利。 安裝最新的 PowerShell,瞭解新功能和改 ...
  • 誰來調用 main 函數 在運行 main 函數之前,會有一段引導代碼,最終由這段代碼調用 main 函數,這段引導代碼不需要自己編寫,而是在編譯、鏈接中由鏈接器將這段程式鏈接到應用程式中,構成最終的可執行文件,載入器會將可執行文件載入到記憶體中 進程的終止 正常終止 在 main 函數中通過 ret ...
  • 獲取 Windows Server 2022 https://www.microsoft.com/zh-cn/evalcenter/evaluate-windows-server-2022 查看 Windows Server 2022 發行說明和系統要求。 註冊,然後下載並安裝。(註意:此評估版將在 ...
  • 事情是這樣的,因為系統漏洞問題,需要升級openssh,從OpenSSH_9.3p1升級到OpenSSH_9.3p2 系統版本:CentOS 7 升級OpenSSH_9.3p2之前需要先升級zlib 從官網下載 wget https://www.zlib.net/zlib-1.3.1.tar.gz ...
一周排行
    -Advertisement-
    Play Games
  • 前言 推薦一款基於.NET 8、WPF、Prism.DryIoc、MVVM設計模式、Blazor以及MySQL資料庫構建的企業級工作流系統的WPF客戶端框架-AIStudio.Wpf.AClient 6.0。 項目介紹 框架採用了 Prism 框架來實現 MVVM 模式,不僅簡化了 MVVM 的典型 ...
  • 先看一下效果吧: 我們直接通過改造一下原版的TreeView來實現上面這個效果 我們先創建一個普通的TreeView 代碼很簡單: <TreeView> <TreeViewItem Header="人事部"/> <TreeViewItem Header="技術部"> <TreeViewItem He ...
  • 1. 生成式 AI 簡介 https://imp.i384100.net/LXYmq3 2. Python 語言 https://imp.i384100.net/5gmXXo 3. 統計和 R https://youtu.be/ANMuuq502rE?si=hw9GT6JVzMhRvBbF 4. 數 ...
  • 本文為大家介紹下.NET解壓/壓縮zip文件。雖然解壓縮不是啥核心技術,但壓縮性能以及進度處理還是需要關註下,針對使用較多的zip開源組件驗證,給大家提供個技術選型參考 之前在《.NET WebSocket高併發通信阻塞問題 - 唐宋元明清2188 - 博客園 (cnblogs.com)》講過,團隊 ...
  • 之前寫過兩篇關於Roslyn源生成器生成源代碼的用例,今天使用Roslyn的代碼修複器CodeFixProvider實現一個cs文件頭部註釋的功能, 代碼修複器會同時涉及到CodeFixProvider和DiagnosticAnalyzer, 實現FileHeaderAnalyzer 首先我們知道修 ...
  • 在軟體行業,經常會聽到一句話“文不如表,表不如圖”說明瞭圖形在軟體應用中的重要性。同樣在WPF開發中,為了程式美觀或者業務需要,經常會用到各種個樣的圖形。今天以一些簡單的小例子,簡述WPF開發中幾何圖形(Geometry)相關內容,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 在 C# 中使用 RabbitMQ 通過簡訊發送重置後的密碼到用戶的手機號上,你可以按照以下步驟進行 1.安裝 RabbitMQ 客戶端庫 首先,確保你已經安裝了 RabbitMQ 客戶端庫。你可以通過 NuGet 包管理器來安裝: dotnet add package RabbitMQ.Clien ...
  • 1.下載 Protocol Buffers 編譯器(protoc) 前往 Protocol Buffers GitHub Releases 頁面。在 "Assets" 下找到適合您系統的壓縮文件,通常為 protoc-{version}-win32.zip 或 protoc-{version}-wi ...
  • 簡介 在現代微服務架構中,服務發現(Service Discovery)是一項關鍵功能。它允許微服務動態地找到彼此,而無需依賴硬編碼的地址。以前如果你搜 .NET Service Discovery,大概率會搜到一大堆 Eureka,Consul 等的文章。現在微軟為我們帶來了一個官方的包:Micr ...
  • ZY樹洞 前言 ZY樹洞是一個基於.NET Core開發的簡單的評論系統,主要用於大家分享自己心中的感悟、經驗、心得、想法等。 好了,不賣關子了,這個項目其實是上班無聊的時候寫的,為什麼要寫這個項目呢?因為我單純的想吐槽一下工作中的不滿而已。 項目介紹 項目很簡單,主要功能就是提供一個簡單的評論系統 ...