Linux操作命令(十)
一、实验介绍
1.1 实验内容
本次实验将介绍 Linux 命令中 df、du 和 time 命令的用法。
1.2 实验知识点
- df 命令
- du 命令
- time 命令
1.3 实验环境
课程使用的实验环境为 Ubuntu Linux 14.04 64 位版本。实验中会用到程序:
- Xfce终端
二、实验步骤
2.1 df 命令
linux 中 df 命令的功能是用来检查 linux 服务器的文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
df 命令是 disk free 的缩写。
(1)命令格式
df [选项] 文件
(2)常用参数
参数 | 描述 |
---|---|
-a | 全部文件系统列表 |
-h | 方便阅读方式显示 |
-i | 显示 inode 信息 |
-T | 文件系统类型 |
-t<文件系统类型> | 只显示选定文件系统的磁盘信息 |
-x<文件系统类型> | 不显示选定文件系统的磁盘信息 |
(3)常用范例
例一:显示磁盘使用情况,可以使用如下命令:
df
例二:以 inode 模式来显示磁盘使用情况,可以使用如下命令:
df -i
例三:列出文件系统的类型,可以使用如下命令:
df -T
例四:显示指定类型磁盘,可以使用如下命令:
df -t ext4
2.2 du 命令
linux 中 du 命令也是查看使用空间的,但是与 df 命令不同的是 Linux du 命令是对文件和目录磁盘使用的空间的查看。
du 命令是 disk usage 的缩写。
(1)命令格式
du [选项] 文件
(2)常用参数
参数 | 描述 |
---|---|
-a | 显示目录中个别文件的大小。 |
-b | 显示目录或文件大小时,以 byte 为单位。 |
-c | 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。 |
-k | 以 KB(1024bytes)为单位输出。 |
-m | 以 MB 为单位输出。 |
-s | 仅显示总计,只列出最后加总的值。 |
-h | 以 K,M,G 为单位,提高信息的可读性 |
(3)常用范例
例一:显示指定文件所占空间,以方便阅读的格式显示,可以使用如下命令:
du -h file1.txt
例二:显示指定目录所占空间,以方便阅读的格式显示,可以使用如下命令:
du -h Desktop
例三:显示几个文件或目录各自占用磁盘空间的大小,并且统计总和,使用如下命令:
du -ch file1.txt file2.txt
例四:按照空间大小逆序排序显示,使用如下命令:
du -h | sort -nr | head -10
2.3 time 命令
time 命令常用于测量一个命令的运行时间,包括实际使用时间(real time)、用户态使用时间(the process spent in user mode)、内核态使用时间(the process spent in kernel mode)。
实际时间: 从 command 命令行开始执行到运行终止的时间。
用户态使用时间:命令执行完成花费的用户 CPU 时间,即命令在用户态中执行时间总和。
内核态使用时间:命令执行完成花费的系统 CPU 时间,即命令在核心态中执行时间总和。
(1)命令格式
time 命令
(2)常用范例
例一:测量 date 命令运行的时间,可以使用如下命令:
time date
从上面的结果可以到:实际运行时间为 0.005s,用户 cpu 时间为 0.001s,系统 cpu 时间为 0.001s。
其中,用户 CPU 时间和系统 CPU 时间之和为 CPU 时间,即命令占用 CPU 执行的时间总和。实际时间要大于 CPU 时间,因为 Linux 是多任务操作系统,往往在执行一条命令时,系统还要处理其它任务。
例二:将 time 命令的执行结果保存到文件中,可以使用如下命令:
{ time date; } 2>1.txt
(time date) 2>2.txt
time 是 shell 的关键字,shell 做了特殊处理,它会把 time 命令后面的命令行作为一个整体来进行处理,在重定向时,实际上是针对后面的命令来的,time 命令本身的输出并不会被重定向的。比如,执行 time date 2>3.txt,3.txt 内容为空。另外,time 命令的输出信息是打印在标准错误输出上的。
三、参考链接
本课程部分内容参考博文每天一个Linux命令,感谢作者peida提供的优质教程。