理论+实验 超详细! Linux进程和计划任务管理

一、查看进程

1.1 程序和进程的关系

■ 程序

  • 保存在硬盘、光盘等介质中的可执行代码和数据
  • 静态保存的代码
    ■ 进程
  • 在CPU及内存中运行的程序代码
  • 动态执行的代码
  • 父、子进程(每个程序可以创建一个或多个进程)

1.2 查看进程信息ps

■ ps命令

  • 查看静态的进程统计信息
  • a:显示当前终端下所有进程信息,包含其他用户进。
  • u:使用以用户为主的格式输出进程信息
  • x:显示当前用户在所有终端下单进程信息
  • e:显示系统内的所有进程信息
  • l :使用长格式显示进程信息
  • f:使用完整的格式显示进程信息
ps aux

在这里插入图片描述

ps  -elf

在这里插入图片描述

1.3 查看进程信息top

■ top命令

  • 查看动态的进程排名信息
top

在这里插入图片描述

1.4 查看进程信息pgrep

■ pgrep 命令

  • 根据特定条件查询进程PID信息
  • -l :显示进程名
  • -U:指定特定用户
  • -t :指定终端
pgrep -l "log"
pgrep -l -U teacher -t tty1

1.5 查看进程信息pstree

■ pstree 命令

  • 以树形结构列出进程信息
  • -a :显示完整信息
  • u:列出对应用户名
  • p:列出对应PID号
pstree -aup
pstree -ap teacher

二、控制进程

2.1 进程的启动方式

■ 手工方式

  • 前台启动:用户输入命令,直接执行程序
  • 后台启动:在命令行尾加入“&”符号
cp /dev/cdrom mycd.iso &

■ 调度启动

  • 使用at命令,设置一次性计划任务
  • 使用crontab命令,设置周期性计划任务

2.2 进程的前后台调度

■ ctrl+Z组合键

  • 将当前进程挂起,即调入后台并停止执行
    ■ jobs 命令
  • 查看处于后台的任务列表
    ■ fg命令
  • 将后台进程恢复到前台运行,可指定任务序号
jobs
fg 1

2.3 终止进程的运行2-1

■ ctrl+C组合键

  • 中断正在执行的命令
    ■ kill、killall命令
  • kill用户终止指定PID号的进程
  • killall用户终止指定名称的所有进程
  • -9选项用户强制终止

2.4 终止进程的运行2-2

■ pkill命令

  • 根据特定条件终止相应的进程
  • 常用命令选项
    -U 、-t
pgrep -l -U “hackli”
pkill -9 -U "hackli"
pgrep -l -U "hackli"

三、计划任务管理

3.1 计划任务管理at命令

■ at命令

  • 一次性计划任务
at [HH:MM] [yyyy-mm-dd]

3.2 计划任务管理crontab命令 1-1

■ crontab命令

  • 按照预先设置的时间周期(分钟、小时、天…)重复执行用户指定的命令操作
  • 属于周期性计划任务
  • 主要设置文件
    在这里插入图片描述

3.3 计划任务管理crontab命令 1-2

■ 管理crontab计划任务
在这里插入图片描述

3.4 crontab任务配置的格式1-1

在这里插入图片描述
在这里插入图片描述

3.4 crontab任务配置的格式1-2

■ 时间数值的特殊表示方法

  • ”*“表示该范围内的任意时间
  • ”,“表示间隔的多个不连续时间点、
  • ”-“表示一个连续的时间范围
  • ”/“指定间隔的时间频率

■ 应用示例

  • 0 17 * * 1-5 ##周一到周五每天17:00
  • 30 8 * * 1,3.5 ##每周一、周三、五的8点30分
  • 0 8-18/2 * * * ##8点到18点之间每2小时
  • 0 * */3 * * ##每三天

四、附带实验

4.1 at命令一次性计划任务实验1-1

在这里插入图片描述

4.2 at命令一次性计划任务实验1-2

实验要求:在当天的21:30时自动关闭当前系统
在这里插入图片描述

4.3 crontab任务实验

实验要求:每两分钟向阿里云时间同步一次,然后重定向到/var/log/natdate.log文件里
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44733021/article/details/107468381