du 显示文件或目录所占用的磁盘空间
-h 输出文件系统分区使用的情况,例如:10KB,10MB,10GB等
-s 显示文件或整个目录的大小,默认单位是KB
df 查看磁盘分区
-h 1024进制进行单位换算
-H 1000进制进行单位换算
-t df -t ext4 列出文件系统为ext4的分区
-i 显示分区inode使用情况
free查看内存使用
-m 以M为单位
-g 以G为单位
pstree、ps、top
linux系统中的所有进程都是相互关联的
除了初始化进程(Linux运行的第一个进程systemed(init)外,多个进程都有一个父进程
pstree
-u 用户名
-p pid
ps
a 显示当前终端下所有用户的进程
x 所有不在当前终端下的进程
u 进程UID或账户号
w 列加宽
e 所有进程
f 显示完整的列表
l 显示进程所属者,进程号和父进程号
常用: ps aux
查看系统占用内存最高的进程TOP5
ps aux | sort -rn -k4 | head -5 | awk '{print $4,$11}'
r:降序排 -n数字
-k4 指定以第四列排序
查看系统占用CPU最高的进程TOP5
ps aux | sort -rn -k3 | head -5 | awk '{print $3,$11}'
生成新的报表
ps ax -o pid,pcpu,nice,comm #-o控制显示字段,这里表示只显示后边的几个字段
生成新的进程报表
ps -axef -o comm,pi,nice,pcpu
top
load average (平均负载):1分钟/五分钟/十分钟的平均负载
Tasks:一共多少个会话(进程),及其状态
Cpu(s):【sy:内核对系统资源的占用】 【%ni:修改优先级的进程对系统资源的占用度】 【%wa:输入输出】【%si:硬件对系统资源的占用】【%st:软件对系统资源的占用度】
top的内置命令
h 帮助
space 立即刷新
k 杀掉进程
r 定义NI值
b 开启/关闭高亮显示
进程的前后台
command & #将进程放到后台
查看后台任务
jobs
将后台任务放到前台
fg 编号
进程优先级
在Linux中进程的优先级从最低19到最高-20
在创建时设置其优先级
nice --19 vim cc.txt 创建一个优先级为-19的cc.txt
查看
ps ax -o nice,comm | grep vim
重新更改其优先级
renice 优先级 PID 重新设置其优先级
查看
ps ax -o pid,nice,comm | grep vim
更改
renice 10 16310 #优先级改为10
kill、killall、pskill
kill:结束某一个单一进程
killall:结束同名程序的所有进程
pkill:结束同名的程序的所有进程
kill用法
命令格式:
kill [参数/信号] [进程id]
参数
-l 信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
-a 当处理当前进程时,不限制命令名和进程号的对应关系
-p 指定kill 命令只打印相关进程的进程号,而不发送任何信号
-s 指定发送信号
-u 指定用户
如果直接kill id 不能结束进程,那就用-9信号,-9信号表示强制结束
kill与ps aux联合使用,查看其进程pid
netstat -pantu查看进程名称、端口、pid
killall用法
命令格式:
killall [参数] [进程名]
参数
-Z 只杀死拥有scontext 的进程
-e 要求匹配进程名称
-I 忽略小写
-g 杀死进程组而不是进程
-i 交互模式,杀死进程前先询问用户
-l 列出所有的已知信号名称
-q 不输出警告信息
-s 发送指定的信号
-v 报告信号是否成功发送
-w 等待进程死亡
–help 显示帮助信息
–version 显示版本显示
杀死所有同名进程
killall nginx
killall -9 bash
pkill用法
pkill:控制同名程序的所有进程
语法:pkill 选项 pattern(模式)
参数:
-G:仅匹配真实组ID在给定列表中的进程。
-P ppidlist: 仅匹配给定列表中PPID的进程。
-t termlist:仅匹配与给定列表中终端关联的进程。
-U uidlist:仅匹配真实的用户ID在给定列表中的进程。
-u euidlist:仅匹配有效用户ID在给定列表中的进程
-signal:指定发往每一个匹配进程的信
-x:仅认为进程其参数字符串或者执行文件名称正确匹配规定模式是匹配的进程。
示例:
1)将某个终端的用户踢出
pkill -kill -t pts/2
2)按用户名踢出用户
pkill -kill -U arisa
3) 强制使arisa账户登出
pkill -9 -u arisa
注:
当利用pkill对PPID进程操作时,实际上仅针对此PPID的子进程操作,而不会对指定的PPID进行操 作。
如:新建用户aa,修改账户密码,使用aa账户在其他终端登录,运行命令:sleep 10000s
使用root账户,运行pstree -p aa来查看aa用户的登录shell和其下运行的进程,使用:
pkill –P PID或pkill –SIGKILL –P PID命令杀死aa的登录shell进程号,再用命 令 pgrep -l -u aa可查看到aa用户的登录shell进程并未被杀死,但其下子进程均以被杀死
注:如果系统内没用pstree命令,可以安装psmisc软件包
直接结束掉tty2用户的所有进程