任务管理
- jobs [-lrs] 列出后台运行的任务。 结果里的【+ -】号,代表最近被放到后台的第一个,第二个任务 ,第三个以后的任务就不会有±号了。
- fg %jobnumber 将后台任务切换到前台执行
- bg %jobnumber,让任务在后台的状态变成运行中
- kill [-l -signal] %jobnumber,列出或强制结束 一个任务
signal:
-1 重新读取一次配置件
-2 代表由键盘输入ctrl -c 一样的操作
-9 x强制删除一个任务
-15 以正常的进程方式 终止一项任务 - killall [-iIe] cmdname ,删除所有指定进程的相关进程
查看进程
- ps aux 查看系统所有进程
- ps axjf 连同部分进程树状态
- -A 列出所有进程
- -a 不显示与终端有关的进程
- -u 有效使用者的相关进程
- x 可以列出较完整的信息输出格式规划
- l 详细的输出指定Pid的信息
- j 任务格式
- -f 做一个更为完整的输出
ps -l 结果解析
- F 进程权限
- S 进程状态
- C CPU使用率
- PRI/NI 进程优先级
- ADDR/SZ/WCHAN 与内存相关
- TIME 使用CPU的时间
进程监控
- top 动态查看进程的变化. 按 q退出。恢复排序按P.
- echo $$, 可以获取当前bash的PID
- pstree 找进程间的相关性
进程优先级调
- nice -n [-20-19] cmd,设置进程优先级
- renice [number] pid ,重新调整进程的Nice值
查看系统资源
- free 查看内存使用情况
- uname 查看系统内核信息
- netstat -[atunlp] 追踪网络或socket文件
- uptime 查看系统启动时间与任务负载
- dmesg 分析内核产生的信息
- vmstat 检测系统资源变化,如CPU,IO,内存,磁盘等状态。
进程数据
内存中的数据都是写入到/proc/*. cmdline:进程被启动的命令串。 environ:进程的环境变量内容。
- fuser 找出正在使用该文件的进程
- lsof 列出被进程使用的文件名
- pidof 找出某个正在执行的进程的pid. pidof [-sx] program name