自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

幾個(gè)用于替代du命令的更好選擇

系統(tǒng) Linux
大家對 du 命令應(yīng)該都不陌生,它可以在類 Unix 系統(tǒng)中對文件和目錄的空間使用情況進(jìn)行計(jì)算和匯總。如果你也經(jīng)常需要使用 du 命令,你會對以下內(nèi)容感興趣的。我發(fā)現(xiàn)了五個(gè)可以替代原有的 du 命令的更好的工具

 [[249750]]

大家對 du 命令應(yīng)該都不陌生,它可以在類 Unix 系統(tǒng)中對文件和目錄的空間使用情況進(jìn)行計(jì)算和匯總。如果你也經(jīng)常需要使用 du 命令,你會對以下內(nèi)容感興趣的。我發(fā)現(xiàn)了五個(gè)可以替代原有的 du 命令的更好的工具。當(dāng)然,如果后續(xù)有更多更好的選擇,我會繼續(xù)列出來。如果你有其它推薦,也歡迎在評論中留言。

ncdu

ncdu 作為普通 du 的替代品,這在 Linux 社區(qū)中已經(jīng)很流行了。ncdu 正是基于開發(fā)者們對 du 的性能不滿意而被開發(fā)出來的。ncdu 是一個(gè)使用 C 語言和 ncurses 接口開發(fā)的簡易快速的磁盤用量分析器,可以用來查看目錄或文件在本地或遠(yuǎn)程系統(tǒng)上占用磁盤空間的情況。如果你有興趣查看關(guān)于 ncdu 的詳細(xì)介紹,可以瀏覽《如何在 Linux 上使用 ncdu 查看磁盤占用量》這一篇文章。

tin-summer

tin-summer 是使用 Rust 語言編寫的自由開源工具,它可以用于查找占用磁盤空間的文件,它也是 du 命令的另一個(gè)替代品。由于使用了多線程,因此 tin-summer 在計(jì)算大目錄的大小時(shí)會比 du 命令快得多。tin-summer 與 du 命令之間的區(qū)別是前者讀取文件的大小,而后者則讀取磁盤使用情況。

tin-summer 的開發(fā)者認(rèn)為它可以替代 du,因?yàn)樗哂幸韵聝?yōu)勢:

  • 在大目錄的操作速度上比 du 更快;
  • 在顯示結(jié)果上默認(rèn)采用易讀格式;
  • 可以使用正則表達(dá)式排除文件或目錄;
  • 可以對輸出進(jìn)行排序和著色處理;
  • 可擴(kuò)展,等等。

安裝 tin-summer

要安裝 tin-summer,只需要在終端中執(zhí)行以下命令:

  1. $ curl -LSfs https://japaric.github.io/trust/install.sh | sh -s -- --git vmchale/tin-summer

你也可以使用 cargo 軟件包管理器安裝 tin-summer,但你需要在系統(tǒng)上先安裝 Rust。在 Rust 已經(jīng)安裝好的情況下,執(zhí)行以下命令:

  1. $ cargo install tin-summer

如果上面提到的這兩種方法都不能成功安裝 tin-summer,還可以從它的軟件發(fā)布頁下載***版本的二進(jìn)制文件編譯,進(jìn)行手動安裝。

用法

(LCTT 譯注:tin-summer 的命令名為 sn

如果需要查看當(dāng)前工作目錄的文件大小,可以執(zhí)行以下命令:

  1. $ sn f
  2. 749 MB ./.rustup/toolchains
  3. 749 MB ./.rustup
  4. 147 MB ./.cargo/bin
  5. 147 MB ./.cargo
  6. 900 MB .

不需要進(jìn)行額外聲明,它也是默認(rèn)以易讀的格式向用戶展示數(shù)據(jù)。在使用 du 命令的時(shí)候,則必須加上額外的 -h 參數(shù)才能得到同樣的效果。

只需要按以下的形式執(zhí)行命令,就可以查看某個(gè)特定目錄的文件大小。

  1. $ sn f <path-to-the-directory>

還可以對輸出結(jié)果進(jìn)行排序,例如下面的命令可以輸出指定目錄中***的 5 個(gè)文件或目錄:

  1. $ sn sort /home/sk/ -n5
  2. 749 MB /home/sk/.rustup
  3. 749 MB /home/sk/.rustup/toolchains
  4. 147 MB /home/sk/.cargo
  5. 147 MB /home/sk/.cargo/bin
  6. 2.6 MB /home/sk/mcelog
  7. 900 MB /home/sk/

順便一提,上面結(jié)果中的***一行是指定目錄 /home/sk 的總大小。所以不要驚訝為什么輸入的是 5 而實(shí)際輸出了 6 行結(jié)果。

在當(dāng)前目錄下查找?guī)в袠?gòu)建工程的目錄,可以使用以下命令:

  1. $ sn ar

tin-summer 同樣支持查找指定大小的帶有構(gòu)建工程的目錄。例如執(zhí)行以下命令可以查找到大小在 100 MB 以上的帶有構(gòu)建工程的目錄:

  1. $ sn ar -t100M

如上文所說,tin-summer 在操作大目錄的時(shí)候速度比較快,因此在操作小目錄的時(shí)候,速度會相對比較慢一些。不過它的開發(fā)者已經(jīng)表示,將會在以后的版本中優(yōu)化這個(gè)缺陷。

要獲取相關(guān)的幫助,可以執(zhí)行以下命令:

  1. $ sn --help

如果想要更詳盡的介紹,可以查看這個(gè)項(xiàng)目的 GitHub 頁面。

dust

dust (含義是 du + rust = dust)使用 Rust 編寫,是一個(gè)免費(fèi)、開源的更直觀的 du 工具。它可以在不需要 headsort 命令的情況下即時(shí)顯示目錄占用的磁盤空間。與 tin-summer 一樣,它會默認(rèn)情況以易讀的格式顯示每個(gè)目錄的大小。

安裝 dust

由于 dust 也是使用 Rust 編寫,因此它也可以通過 cargo 軟件包管理器進(jìn)行安裝:

  1. $ cargo install du-dust

也可以從它的軟件發(fā)布頁下載***版本的二進(jìn)制文件,并按照以下步驟安裝。在寫這篇文章的時(shí)候,***的版本是 0.3.1。

  1. $ wget https://github.com/bootandy/dust/releases/download/v0.3.1/dust-v0.3.1-x86_64-unknown-linux-gnu.tar.gz

抽取文件:

  1. $ tar -xvf dust-v0.3.1-x86_64-unknown-linux-gnu.tar.gz

***將可執(zhí)行文件復(fù)制到你的 $PATH(例如 /usr/local/bin)下:

  1. $ sudo mv dust /usr/local/bin/

用法

需要查看當(dāng)前目錄及所有子目錄下的文件大小,可以執(zhí)行以下命令:

  1. $ dust

輸出示例:

帶上 -p 參數(shù)可以按照從當(dāng)前目錄起始的完整目錄顯示。

  1. $ dust -p

dust 2

如果需要查看多個(gè)目錄的大小,只需要同時(shí)列出這些目錄,并用空格分隔開即可:

  1. $ dust <dir1> <dir2>

下面再多舉幾個(gè)例子,例如:

顯示文件的長度:

  1. $ dust -s

只顯示 10 個(gè)目錄:

  1. $ dust -n 10

查看當(dāng)前目錄下最多 3 層子目錄:

  1. $ dust -d 3

查看幫助:

  1. $ dust -h

如果想要更詳盡的介紹,可以查看這個(gè)項(xiàng)目的 GitHub 頁面

diskus

diskus 也是使用 Rust 編寫的一個(gè)小型、快速的開源工具,它可以用于替代 du -sh 命令。diskus 將會計(jì)算當(dāng)前目錄下所有文件的總大小,它的效果相當(dāng)于 du -shdu -sh --bytes,但其開發(fā)者表示 diskus 的運(yùn)行速度是 du -sh 的 9 倍。

安裝 diskus

diskus 已經(jīng)存放于 Arch Linux 社區(qū)用戶軟件倉庫Arch Linux User-community RepositoryAUR)當(dāng)中,可以通過任何一種 AUR 幫助工具(例如 yay)把它安裝在基于 Arch 的系統(tǒng)上:

  1. $ yay -S diskus

對于 Ubuntu 及其衍生發(fā)行版,可以在 diskus軟件發(fā)布頁上下載***版的軟件包并安裝:

  1. $ wget "https://github.com/sharkdp/diskus/releases/download/v0.3.1/diskus_0.3.1_amd64.deb"
  2.  
  3. $ sudo dpkg -i diskus_0.3.1_amd64.deb

還可以使用 cargo 軟件包管理器安裝 diskus,但必須在系統(tǒng)上先安裝 Rust 1.29+。

安裝好 Rust 之后,就可以使用以下命令安裝 diskus

  1. $ cargo install diskus

用法

在通常情況下,如果需要查看某個(gè)目錄的大小,我會使用形如 du -sh 的命令。

  1. $ du -sh dir

這里的 -s 參數(shù)表示顯示總大小。

如果使用 diskus,直接就可以顯示當(dāng)前目錄的總大小。

  1. $ diskus

我使用 diskus 查看 Arch Linux 系統(tǒng)上各個(gè)目錄的總大小,這個(gè)工具的速度確實(shí)比 du -sh 快得多。但是它目前只能顯示當(dāng)前目錄的大小。

要獲取相關(guān)的幫助,可以執(zhí)行以下命令:

  1. $ diskus -h

如果想要更詳盡的介紹,可以查看這個(gè)項(xiàng)目的 GitHub 頁面

duu

duu 是 Directory Usage Utility 的縮寫。它是使用 Python 編寫的查看指定目錄大小的工具。它具有跨平臺的特性,因此在 Windows、Mac OS 和 Linux 系統(tǒng)上都能夠使用。

安裝 duu

安裝這個(gè)工具之前需要先安裝 Python 3。不過目前很多 Linux 發(fā)行版的默認(rèn)軟件倉庫中都帶有 Python 3,所以這個(gè)依賴并不難解決。

Python 3 安裝完成后,從 duu軟件發(fā)布頁下載其***版本。

  1. $ wget https://github.com/jftuga/duu/releases/download/2.20/duu.py

用法

要查看當(dāng)前目錄的大小,只需要執(zhí)行以下命令:

  1. $ python3 duu.py

輸出示例:

從上圖可以看出,duu 會顯示當(dāng)前目錄下文件的數(shù)量情況,按照 Byte、KB、MB 單位顯示這些文件的總大小,以及每個(gè)文件的大小。

如果需要查看某個(gè)目錄的大小,只需要聲明目錄的絕對路徑即可:

  1. $ python3 duu.py /home/sk/Downloads/

如果想要更詳盡的介紹,可以查看這個(gè)項(xiàng)目的 GitHub 頁面

以上就是 du 命令的五種替代方案,希望這篇文章能夠幫助到你。就我自己而言,我并不會在這五種工具之間交替使用,我更喜歡使用 ncdu。歡迎在下面的評論區(qū)發(fā)表你對這些工具的評論。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2021-12-15 12:20:05

du工具Linux

2021-12-22 10:25:13

locateLinuxplocate

2010-05-11 10:03:55

ApacheLighttpdNginx

2010-05-27 16:58:11

Linux查看文件大小

2009-08-11 10:45:58

linux中du命令參linux命令行參數(shù)linux命令行

2009-10-22 10:54:51

linux磁盤管理命令

2018-03-19 08:47:24

Linux命令磁盤使用

2021-01-28 12:08:17

數(shù)據(jù)工具技術(shù)

2019-12-05 10:59:08

云計(jì)算存儲數(shù)據(jù)

2010-03-08 17:18:46

Linux du命令

2023-05-30 14:54:17

Python循環(huán)語句工具

2022-04-20 12:17:50

命令Batcat

2023-11-30 08:55:15

LinuxLibreOffic

2019-07-29 14:03:07

JavaScriptweb網(wǎng)絡(luò)

2022-04-25 10:04:56

df命令Linux

2019-08-28 08:00:00

Splunk分析日志系統(tǒng)管理員

2009-08-11 10:34:41

linux中du命令參linux命令行參數(shù)linux命令行

2021-06-28 11:17:14

CoutPrintf接口

2012-07-20 09:37:00

Oracle LinuCentOS

2010-07-14 15:52:28

Telnet命令
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號