di – 比 df 更有用的磁盘信息工具

如果你是个Linux命令行用户,你肯定会使用df命令检查文件系统的磁盘使用情况。尽管df是一个受欢迎的命令,但仍然不能提供一些高级的功能,如一个用户实际的磁盘可用空间,以及各种有用的显示格式等。还有另一个命令行实用工具可用,不仅提供了这些高级功能也提供了df的所有特性。在本文中,我们将讨论磁盘信息工具 — di

注释 – 如果你想了解 df 更多信息, 查看 df命令教程.

di – 磁盘信息工具

从这个di帮助手册页很明显的发现 di 提供了一些很有价值的特性,值得一试。让我们看一些这个工具实际使用的例子。

测试环境一个简短的教程

下面是一些 di 工具的示例:

1. 默认的输出

默认情况下di命令生成人们易读的输出格式

这里有个示例:

$ diFilesystemMountSizeUsed Avail %Used fs Type /dev/sda6/28.1G 20.2G6.5G 77% ext4udev/dev1.5G0.0G1.5G 0% devtmpfstmpfs/run300.2M0.9M 299.3M 0% tmpfs

所以你能发现用千兆字节(G)和兆字节(M)做磁盘使用情况的数据单位。这绝对是比 df 默认的输出产生的效果好。(译注:df也可以输出带类似单位的显示,只是需要额外加参数 -h)

2. 用 -A 选项打印类似挂载点、特殊设备名称等全部字段

选项 -A可以用来极详细的打印挂载点,特殊设备名称等。

这里有个示例:

$ di -AMount fs Type FilesystemOptionsSizeUsedFree %Used %FreeSizeUsed Avail %Used %FreeSizeUsed Avail %UsedInodesIusedIfree %Iused/ext4/dev/sda6rw,errors=remount-ro28.1G 20.2G8.0G 72% 28%28.1G 21.6G6.5G 77% 23%26.7G 20.2G6.5G 75%1884160 389881 1494279 21% /dev devtmpfs udevrw,mode=07551.5G0.0G1.5G 0% 100%1.5G0.0G1.5G 0% 100%1.5G0.0G1.5G 0%381805571 381234 0% /run tmpfs tmpfsrw,noexec,nosuid,size=10%,mode=0755300.2M0.9M 299.3M 0% 100%300.2M0.9M 299.3M 0% 100%300.2M0.9M 299.3M 0%384191549 383642 0%

所以你可以看到所有的字段,,可以用于调试目的时打印输出。

3. 用 -a选项打印所有挂载设备

这里是个示例:

$ di -aFilesystemMountSizeUsed Avail %Used fs Type/dev/sda6/28.1G 20.2G6.5G 77% ext4udev/dev1.5G0.0G1.5G 0% devtmpfsdevpts/dev/pts0.0M0.0M0.0M 0% devptsproc/proc0.0M0.0M0.0M 0% procbinfmt_misc/proc/sys/fs/bi0.0M0.0M0.0M 0% binfmt_misctmpfs/run300.2M0.9M 299.3M 0% tmpfsnone/run/lock0.0M0.0M0.0M 0% tmpfsnone/run/shm0.0M0.0M0.0M 0% tmpfsnone/run/user0.0M0.0M0.0M 0% tmpfsgvfsd-fuse/run/user/himan0.0M0.0M0.0M 0% fuse.gvfsd-fusesysfs/sys0.0M0.0M0.0M 0% sysfsnone/sys/fs/cgroup0.0M0.0M0.0M 0% tmpfsnone/sys/fs/fuse/co0.0M0.0M0.0M 0% fusectlnone/sys/kernel/deb0.0M0.0M0.0M 0% debugfsnone/sys/kernel/sec0.0M0.0M0.0M 0% securityfs

所以你能看到与所有设备相关的所有信息,被打印出来了。

4. 用 -c 选项用逗号作为值的分隔符

选项 -c 用命令分隔的值将附上双引号

这里是个示例:

$ di -cs,m,b,u,v,p,T/dev/sda6,/,28.1G,20.2G,6.5G,77%,ext4udev,/dev,1.5G,0.0G,1.5G,0%,devtmpfstmpfs,/run,300.2M,0.9M,299.3M,0%,tmpfs

如上,你可以看到打印了用逗号分隔符输出的值。(译注:这种输出便于作为其他程序的输入解析)

5. 用 -g 选项通过千兆字节(G)打印大小

下面是个示例:

$ di -gFilesystemMountGibisUsed Avail %Used fs Type /dev/sda6/28.120.26.5 77% ext4udev/dev1.50.01.5 0% devtmpfstmpfs/run0.30.00.3 0% tmpfs

当然,你能看到所有与大小有关的值都用千兆字节(G)打印出来。

同样的你可以用 -k 和 -m 选项来分别的显示千字节(K)大小和兆字节(M)大小。

6. 通过 -I 选项显示特定的文件系统类型的相关信息

假设你想显示只跟tmpfs文件系统相关的信息。下面将告诉你如何用 -I 选项完成任务。

$ di -I tmpfsFilesystemMountSizeUsed Avail %Used fs Typetmpfs/run300.2M0.9M 299.3M 0% tmpfs none/run/lock5.0M0.0M5.0M 0% tmpfs none/run/shm1.5G0.0G1.5G 0% tmpfs none/run/user100.0M0.0M 100.0M 0% tmpfs none/sys/fs/cgroup0.0M0.0M0.0M 0% tmpfs

Ok 你能看到只有tmpfs类型相关文件系统信息被输出并显示出来了。

7. 用 -n 选项跳过标题行的输出

如果你正试图通过一个脚本(或程序)解析该命令的输出结果并希望 di 命令跳过显示的标题行,那么用 -n 选项是绝佳的方法。

下面是个示例:

$ di -n/dev/sda6/28.1G 20.2G6.5G 77% ext4udev/dev1.5G0.0G1.5G 0% devtmpfstmpfs/run300.2M0.9M 299.3M 0% tmpfs

如上,你能发现输出中并没有显示标题行。

8. 通过 -t 选项在文件系统列表底下再打印一行总计行

如果想要显示所有相关列的总数,用 -t 选项。

示例:

$ di -tFilesystemMountSizeUsed Avail %Used fs Type /dev/sda6/28.1G 20.2G6.5G 77% ext4udev/dev1.5G0.0G1.5G 0% devtmpfstmpfs/run300.2M0.9M 299.3M 0% tmpfsTotal29.9G 20.2G8.3G 72%

观察到最后一行的值为所有文件系统的统计数据。

9. 通过 -s 选项 排序输出

-s选项可用于排序该命令的输出结果(译注:默认按照挂载点名称排序)

放弃那些不愿放弃的,容忍那些不可容忍的。

di – 比 df 更有用的磁盘信息工具

相关文章:

你感兴趣的文章:

标签云: