1. du
命令
du
顾名思义就是disk usage,即用来统计文件或者目录的磁盘占用情况。
du
命令有很多选项(options),下面介绍几个常用的。
du [FILE | DIRECTORY]
du
后面直接跟文件名,将打印出文件在磁盘中占用了多大空间:
这里占用了4KB的空间,即一个block的大小(参见Linux文件i-node)。
du
后面跟的是目录的时候,将会递归的打印出该目录以及每一个下级目录所占的磁盘空间。
du -h
即按易读方式打印。
du -s
即显示目录总共占了多大的磁盘空间,不用递归。
du --inodes
即显示文件或者目录占用了多少个inode节点,而不是占用了多少磁盘空间。
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
以进程树的方式排列进程。
2 条评论
test
查看系统 CPU、I/O 使用情况的命令呢