进程和计划任务管理(简单易懂)

it2025-04-23  14

程序和进程的关系

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

查看进程信息 ps

■ ps命令 ● 查看静态的进程统计信息

[root@localhost ~]# ps aux ps a 显示当前终端下的所有进程信息 u 显示以用户为主的格式显示进程信息 x 显示当前用户在所有终端下的进程信息 -e 显示系统内的所有进程信息, -l 使用长格式显示进程信息 -f 使用完整格式显示进程信息

● 查询进程信息

pgrep -l "xxx" 输出进程名中包含xxx的进程及进程号(pid) -U aaa 输出由用户aaa运行的进程及进程号(pid) -t tty1 输出tty1终端上运行的进程及pid号

● 进程的启动方式

■ 手工启动 ● 前台启动:用户输入命令,直接执行程序 ● 后台启动:在命令行尾加入“&”符号 ■ 调度启动 ● 使用at命令,设置一次性计划任务 ● 使用crontab命令,设置周期性计划任务

● 进程的前后台调度

■ Ctrl+Z组合键 ● 将当前进程挂起,即调入后台并停止执行 ■ jobs-l 命令 ● 查看处于后台的任务列表 ■ fg命令 ● 将后台进程恢复到前台运行,可指定任务序号

● 终止进程的运行

■ Ctrl+C组合键 ● 中断正在执行的命令 ■ kill、killall命令 ● kill用于终止指定PID号的进程 ● kilal用于终止指定名称的所有进程 ● -9选项用于强制终止 ■ pkill命令 ● 根据特定条件终止相应的进程 ● 常用命令选项 ◆ -u:根据进程所属的用户名终止相应进程 ◆ -t: 根据进程所在的终端终止相应进程

计划任务管理 at

■ at命令 ● 一次性计划任务 at [HH:MM] [yyyy-mm-dd] ■ 案例 ● 在当天的21:30时自动关闭当前系统 [root@localhost ~]# at 21:30 at> shutdown -h now at> job 2 at Sun May 7 21:30:00 2017 [root@localhost ~]# atq 查看未执行的任务列表 2 Sun May 7 21:30:00 2017 a root [root@localhost ~]# atrm 2 删除第二条任务 [root@localhost ~]# atq

crontab命令

● 按照预先设置的时间周期(分钟、小时、....... 重复执行用户指定的命令操作 ● 属于周期性计划任务 ● 主要设置文件 ◆ 全局配置文件,位于文件: /etc/crontab ◆ 系统默认的设置,位于目录: /etc/cron.*/ ◆ 用户定义的设置,位于文件: /var/spool/cron/用户名

● 编辑计划任务 crontab -e [-u 用户名]

● 查看计划任务 crontab -l [-u用户名]

● 删除计划任务 crontab -r [-u用户名]

crontab任务配置的格式

时间数值的特殊表示方法

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

■ 应用示例

0 17 * * 1-5 周一到周五每天17:00 30 8 * * 1,3,5 每周一、三、五的8点30分 0 8-18/2 * * * 8点到18点之间每2小时 0 * */3 * * 每3天
最新回复(0)