1.进程
ps -elfu
-u:第一列显示进程所属的用户
-l 长格式信息
-e 显示全部进程信息
-f 显示每个进程的所有信息
各个字段的含义:
PID 进程号
PPID 父进程号
PRI 优先级,有基准数80 (centos) 10(RH9)
NI 标准的UNIX优先级
CMD 命令
C cpu的使用
SZ 内存的使用
UID 所属用户ID
TTY 登录的终端 PTS/0 图形界面 TTY。。。。字符界面
TIME 进程熊启动以来占用CPU的总时间
2.进程的启动
两种启动方式
调度启动:系统进程
手工启动:用户进程
前台启动:ls -l
后台启动:ls -l>test&
3.进程的切换
挂起进程:ctrl+z
bg:将挂起的进程恢复到后台
fg:将挂起的进程恢复到前台
cat >/home/file1
ctrl+z
jobs
bg 进程号
fg 进程号
4.进程优先级的设置PRI(priority):-20 20 值越小,优先级越高
nice 启动进程,同时设置其优先级 nice -5 vi 设置vi进程的优先级提高5 PRI 80+5 NI 5
renice 已经运行的进程,改变其优先级 renice -5 -p 进程号 设置正在运行的vi进程的优先级为-5 PRI 80-5 NI -5
root可以提高进程的优先级
普通用户不能设置优先级为负数
nice -5 vi
ctr+z
ps -l
renice -5 -p 进程号
ps -l
5.暂停进程
sleep 10;tail -2 /etc/passwd
date;sleep 5;date
6.终止进程
root可以终止所有进程,普通用户只能终止自己启动的进程
前台进程终止 ctr+c
后台进程的终止
kill -s kill 进程号
kill -s 9 进程号
kill -9 进程号
其他命令:
who查看当前登录的所有用户
top 动态显示cpu和内存、交换分区swap的信息,默认刷新时间是5秒
top -d 10 每10秒刷新一次
free显示内存、交换分区swap的信息 ,默认单位kb
1.一次性计划任务安排
(1)
at 12:00 07122023 月日年
at> 录入要执行的一次性计划任务的内容
ctr+d
查看已有的计划任务
at -l
(2)
vi /home/roo/test/task1
at -f /home/roo/test/task1 12:00 07122023
时间格式的扩展
at 12:00 07/12/2023
at 14:00 07122023
at 2:00pm 07122023
at 2:00pm today
at 2:00pm tomorrow
at 2:00am+2days
ex1:
/home/roo/test
touch aa
touch bb
确保aa和bb有内容
一次性计划任务内容:将文档aa和文档bb的内容合并到文档cc中
计划任务执行的时间:今天下午3点12分
分别用两种方法完成
2.周期性计划任务
系统进程cron会被自动调用,每过一分钟被唤醒1次,自动检查/var/spool/cron下和设置计划任务用户同名的文档,该文档中存放计划任务的内容
crontab -e 编辑周期性计划任务的内容,自动打开/var/spool/cron/root(当前操作的用户名)
调度启动 使用cron调度,这是一个后台守护进程,一直在后台服务,
该进程启动后,首先检查用户是否设置了crontab文件/var/spool/cron/root(当前操作的用户名),该进程每分钟被唤醒1次,其他时间处于睡眠状态,释放系统资源。
编辑计划任务:crontab -e [-u 用户名]
查看计划任务:crontab -l [-u 用户名]
删除计划任务:crontab -r [-u 用户名]
crontab -e 编辑计划任务
30 08 * * 2 tail -3 /etc/passwd
通过crontab命令编辑crontab文件,把要周期性执行的任务内容编辑到该文件中.
cron守护进程检查crontab文件,:搜索/var/spool/cron目录,寻找以用户名命名的crontab文件,将其载入内存。
时间数值的特殊表示方法
* 表示该范围内的任意时间
, 表示间隔的多个不连续时间点
- 表示一个连续的时间范围
/ 指定间隔的时间频率
应用示例
0 17 * * 1-5 周一到周五每天17:00
30 8 * * 1,3,5 每周一、三、五的8点30分
0 8-18/2 * * * 8点到18点之间每隔2小时
0 * */3 * * 每隔3天