定时任务、进程管理


Linux计划任务


定义:未来的某个时间执行一次任务,或周期性执行某个任务
          执行结果会通过邮件通知

1、at       Ctrl+D退出

(1)时间定义
hh:mm 12:00
noon teatime
AM PM 8am 9pm
2019-8-11 2019/8/11
+ 5 minutes hours days week

(2)语法结构
at 选项:
-q: 列出任务
-f:从文件中读取
-l:列出任务
-d:指定删除
-v:列出已执行,未删除的任务
-V:版本号
-c:查看作业内容分
atq 查看待处理作业
atrm 删除待处理作业

2、cron命令

crontab

crontab使用者的权限,在下列文件中:
(1)/etc/cron.deny 该文件中所列的用户不允许使用crontab命令
(2)/etc/cron.allow 该文件中所有的用户允许使用crontab命令
(3)/var/spool/cron/ 是所有用户的crontab文件

语法结构       crontab [-u user] [-1 | -r | -e] [-i] [-s]
-e :编辑任务
-l :列出任务列表
-r :移除任务
-i :移除时确认,与-r一起使用
在这里插入图片描述
时间表示法:
1、特定值
   40 8 * * *
2、*
   * 8 * * *
3、连续值
   8-10 9-17
4、离散值
  8,10 ,12
5、定义时间点 时间步长
      /4

注意:定义步长需要能被整除
5 * * * * 每小时的第五分钟执行一次
3 4 * * 5 每周周五的四点零三分执行一次
5 6 7 * * 每月的7号,六点零五分

计划任务规范:
1、脚本要规范,脚本存在的位置要规范,便于维护
2、定时任务要写注释
3、执行的脚本要带绝对路径
4、执行结果的标准输出或者错误输出 > /dev/null
5、可以以命令完成的任务,也要写在脚本里
6、分用户执行


Linux进程管理


1、程序与进程
程序:一组指令以及参数的集合,按照相应的逻辑控制计算机完成特定任务
进程:运行的程序,动态。操作系统上的基本单位,生命周期,状态

程序——>系统调用——>缓存(内存)——>CPU
处理特点:静态的、封闭的

程序——>运行——>进程1,进程2,进程3…
特点:动态、有生命周期、运行状态、操作系统运行的基本单位、并发、交互性

2、进程与线程
进程——线程1,线程2…——>线程把整个任务完成之后,才能运行
(linux:进程,线程——>独立的资源集,入口,序列,出口)

3、父进程和子进程

       子进程由一个进程产生,产生子进程的叫做父进程。当子进程运行时,父进程处于睡眠状态。此时子进程继承父进程的资源、权限等。

       当子进程完成任务发出exit请求退出时,子进程已经关闭或丢弃自己的资源环境,剩余部分为僵尸进程。父进程在子进程退出时被唤醒,清理剩余结构,继续执行。

4、进程的管理工具

(1)pstree 进程树 :查看进程与进程的关系
-p:显示pid
-u:显示用户

(2)ps
-a:显示所有进程
-u:显示以用户为主的进程
x 和 au配合使用 显示完整信息
-l :显示更完整信息

(3)kill 只能带进程号删        killall 删除所有同名进程
-9:强制杀死进程
-w:等待进程死亡
-l:列出已知信号

(4)lsof 文件句柄
   -u :uname/uid 显示归属uname/uid的进程情况
   -g: gname/gid 显示归属gname/gid的进程情况
   -i:用以显示符合条件的进程的情况
   -p 123:列出进程号为123的进程所打开的文件
   -c abc : 显示出以abc开头,进程打开的文件
   +d:/usr/local/显示目录下被进程开启的文件
   +D:/usr/local/同上,但是会搜索目录下的目录,时间较长
   -d 4 :显示使用fd为4的进程

5、进程优先级

(1)进程优先级划分
【0-139】 (数字越小优先级越高)
【0-99】:有效实时优先级
【100-139】:非有效实时优先级

(2)nice值的调整
   top “r” ——enter; 输入PID——enter;输入nice值——enter
   renice【-29,19】PPID
   htop F7 减 F8 加

6、进程的状态

 (1)sleeping ——睡眠状态
 (2)stopping——停止状态
 (3)running——运行状态
 (4)zombie——僵死状态

7、进程在前后台的运行,作业控制

(1)在前台一次只能运行一个作业
(2)在后台可以运行多个作业
(3)jobs查看后台作业;与终端有关,不同终端的作业要在对应终端上查看
(4)fg %job编号 把后端的作业提到前端
(5)bg %job编号 把后台作业运行起来
(6)Ctrl + z 挂起

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值