1. du命令

du顾名思义就是disk usage,即用来统计文件或者目录的磁盘占用情况。

du命令有很多选项(options),下面介绍几个常用的。

du [FILE | DIRECTORY]

du后面直接跟文件名,将打印出文件在磁盘中占用了多大空间:

这里占用了4KB的空间,即一个block的大小(参见Linux文件i-node)。

du后面跟的是目录的时候,将会递归的打印出该目录以及每一个下级目录所占的磁盘空间。

du -h

即按易读方式打印。

du -s

即显示目录总共占了多大的磁盘空间,不用递归。

du --inodes

即显示文件或者目录占用了多少个inode节点,而不是占用了多少磁盘空间。

Linux中目录也是文件,所以也有一个i-node节点。

2. df命令

df用来显示整个文件系统的磁盘占用。

df [FILE]

显示FILE所在的文件系统的磁盘空间占用情况,如果不加FILE,则默认显示所有文件系统的磁盘空间占用情况。

df -h

用易读方式打印。

df -i

显示文件系统的i-node使用情况,而不是磁盘空间使用情况。

3. free命令

显示系统中已经使用的以及空闲的内存大小。

free

打印内存使用情况。

其中total表示总安装内存,used表示已经使用的内存,free表示未使用的内存,shared表示tmpfs(临时文件系统)所占用的内存,buff/cache表示内核缓冲区以及缓存使用的内存,available为系统评估出来的可以用来继续开启程序的内存大小(不包括交换空间),之所以会大于free,是因为会加上一部分预估可以释放的buff/cache空间。

free -h

用易读方式打印。

free -s seconds

每隔seconds统计一次。

4. top命令

top命令可以动态实时显示系统下所以由内核管理的进程线程的信息。

可以看到,信息非常全,上半部分是系统的信息汇总,下半部分是进程的信息汇总。

而且top提供的这个界面是可以进行有限的交互的,例如按m可以切换内存使用部分的显示效果。

下面介绍一些简单的命令行参数和交互命令。

top -d

设定top界面每多少秒更新一次,例如top -d0.5可以半秒刷新一次。

d交互命令可以用来设置该功能。

top -p PID

指定top只监控PID进程的状态。

top -i

不显示那些从上次更新就没使用过CPU的进程(sleeping stoped or zombie...)

i交互命令可以用来开关该功能。

top -c

显示进程的详细命令行路径而不是只有命令名。

k交互命令

终止一个进程,向其发送一个信号。输入k后会提示输入进程PID以及信号ID。

f交互命令

可以再打开一个页面,在这个页面中你可以调整进程由什么信息排序,可以添加一些进程的其他信息,例如父进程PID,进程相关用户ID等等。

5. ps命令

统计当前的全部进程信息。

这个命令参数非常多,具体每个参数代表什么意思可以直接man或者看这个博客

一般使用ps的几个常用的组合选项就行了。

ps -ef

有UID、PID、PPID等信息。

ps -aux

有CPU占用、内存占用、进程状态等信息。

ps -axjf

以进程树的方式排列进程。

最后修改:2019 年 11 月 11 日
如果觉得我的文章对你有用,请随意赞赏