进程与计划任务管理(命令)

目录

一、查看进程的命令(ps、top、pgrep、pstree)

1.1 ps(查看静态的进程统计信息)

例一:查看进程状态

例二:D 不可中断状态

例三:Z 僵尸进程

1.2 top(查看进程动态信息)

1.2.1 top 显示基本信息介绍

1.2.2 top 命令全屏操作界面快捷键

1.3 pgrep(查询进程基本信息)

1.4 pstree(以树形结构列出进程信息)

​编辑二、进程控制(启动进程、调度进程、终止进程)

2.1 启动进程

2.2 调度进程(jobs)

2.2.1 jobs:查看处于后台的任务列表

2.2.2 bg + 后台进程序号

2.2.3 fg + 后台进程序号

2.3 中止进程

2.3.1 kill(根据PID 号作为指定)

2.3.2 killall(根据进程名作为指定)

2.3.3 pkill(根据进程名称、运行该进程的用户、进程的终端等指定)

​编辑三、at命令设置计划任务(单次性)

at  [HH:MM]  [yyyy-mm-dd](时间+日期)

atq:查询at任务列表

atrm:删除at任务列表

atrm + 1 (删除序号为1的at任务列表)

四、crontab计划任务的配置字段(周期性)

主要设置文件

管理crontab计划任务


一、查看进程的命令(ps、top、pgrep、pstree)

1.1 ps(查看静态的进程统计信息)

常用的参数

  • -a:显示当前终端下的所有进程信息,包括其他用户的进程。与“x”选项结合时将显示系统中所有的进程信息
  • -u:使用以用户为主的格式输出进程信息
  • -x:显示当前用户在所有终端下的进程信息
  • aux:将以简单列表的形式显示出进程信息
  • -e:显示系统内的所有进程信息
  • -l:使用长格式显示进程信息
  • -f:使用完整的格式显示进程信息
  • elf:将以长格式显示系统中的进程信息

USER启动该进程的用户账号的名称
PID该进程在系统中的数字 ID 号,在当前系统中是唯一的
%CPUCPU 占用的百分比
%MEM内存占用的百分比
VSZ该进程使用的虚拟内存量(KB)
RSS该进程占用的物理内存量(KB)
TTY表明该进程在哪个终端上运行。不是从终端启动的进程则显示为?
STAT

进程的状态:

D:不可中断的休眠状态

R:该程序目前正在运作,或者是可被运作

S:该程序目前正在睡眠当中 (可说是 idle 状态啦!),但可被某些讯号(signal) 唤醒

T:停止状态,可能是在后台暂停或进程处于跟踪调试状态

Z:僵尸进程:该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态【简单来说:父进程中止,子进程继续运行】

<:表示进程运行在高优先级上
N:表示进程运行在低优先级上
L:表示进程有页面锁定在内存中
s:表示进程是控制进程
l:表示进程是多线程的

+:表示当前进程运行在前台

START启动该进程的时间
TIME该进程占用的 CPU 时间
COMMAND启动该进程的命令的名称

       

F内核分配给进程的系统标记
S进程的状态
UID启动这些进程的用户
PID进程的进程ID
PPID父进程的进程号(如果该进程是由另一“个进程启动的)
C进程生命周期中的CPU利用率
PRI进程的优先级(越大的数字代表越低的优先级)
NI谦让度值用来参与决定优先级
ADDR进程的内存地址
SZ假如进程被换出,所需交换空间的大致大小
WCHAN若该进程在睡眠,则显示睡眠中的系统函数名
STIME进程启动时的系统时间
STAT-D:不可被唤醒的睡眠状态,通常用于 I/O 情况。
-R:该进程正在运行。
-S:该进程处于睡眠状态,可被唤醒。
-T:停止状态,可能是在后台暂停或进程处于除错状态。
-W:内存交互状态(从 2.6 内核开始无效)。
-X:死掉的进程(应该不会出现)。
-Z:僵尸进程。进程已经中止,但是部分程序还在内存当中。
-<:高优先级(以下状态在 BSD 格式中出现)。
-N:低优先级。
-L:被锁入内存。
-s:包含子进程。
-l:多线程(小写 L)。
-+:位于后台。
-C:进程占用CPU的百分比
TTY

进程启动时的终端设备

pts/0255代表虚拟终端,一般是远程连接的终端

tty1、tty7 代表本地控制台终端

TIME运行进程需要的累计CPU时间
COMMAND进程的启动命令

例一:查看进程状态

例二:D 不可中断状态

不断输入命令进行刷新

例三:Z 僵尸进程

恢复

kill -18 45680

1.2 top(查看进程动态信息)

1.2.1 top 显示基本信息介绍

15:23:03当前时间
up 1 day系统运行时间(说明此服务器运行一天)
2 users当前登录用户数

load average:

0.00, 0.01,0.05

系统负载,即任务队列的平均长度。 三个数值分别为 1 分钟、5 分钟、15 分钟前到现在的平均值
Tasks:系统任务信息193 total:193个总进程数
running正在运行的进程数
sleeping休眠的进程数
stopped中止的进程数
zombie僵死无响应的进程数

%cpu

(CPU 占用信息)

us:用户占用

sy:内核占用

ni:优先级调度占用

id:空闲CPU百分比

wa:等待占用(等待I/0 完成的时间总量)

hi:系统中断占用(硬件中断占用)

si:软件中断占用

st:虚拟化占用

KiB Men

(内存占用信息)

total:总内存空间

free:空闲内存

used:已用内存

buff/cache:物理内存和交换内存的缓冲区总和

KiB Swap

(交换空间占用)

total:总交换空间

free:空闲交换空间

used:已用交换空间

avail Mem:可用物理空间。

PID进程 id
USER进程所有者的用户名
PR优先级(由内核动态调整),用户不能
NI

进程优先级

nice 值。负值表示高优先级,正值表示低优先级,用户可以自己调整

VIRT

(virtual memory usage)

虚拟内存,是进程正在使用的所有内存(ps 中标为 VSZ)

注:

  • 进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等
  • 假如进程申请 100m 的内存,但实际只使用了 10m,那么它会增长100m,而不是实际的使用量

RES(resident memory usage

进程所使用的物理内存

注:

  • 进程当前使用的内存大小,但不包括 swap out
  • 包含其他进程的共享
  • 如果申请 100m 的内存,实际使用 10m,它只增长 10m,与 VIRT 相反
  • 关于库占用内存的情况,它只统计加载的库文件所占内存大小
SHR

共享内存大小

注:

  • 除 M 了自身进程的共享内存,也包括其他进程的共享内存
  • 虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小
  • 计算某个进程所占的物理内存大小公式:RES – SHR 4、swap out 后,它将会降下来
S

进程状态:

D=不可中断的睡眠状态
R=运行中或可运行
S=睡眠中
T=已跟踪/已停止
Z=僵停

%CPU上次更新到现在的 CPU 时间占用百分比
%MEM进程使用的物理内存百分比
TIME+进程使用的 CPU 时间总计,单位 1/100 秒
COMMAND命令名/命令行

1.2.2 top 命令全屏操作界面快捷键

默认 3s 刷新一次,按 s 修改刷新时间按空格 :立即刷新。

P:按 CPU 排序

M:按内存排序

T:按时间排序

p: 进程 IP,查看某个进程状态

N 键根据启动时间进行排序

数字键 1:显示每个内核的 CPU 使用率u/U:指定显示的用户

h:可以获得 top 程序的在线帮助信息

q:键可以正常地退出 top 程序

:若通过 top 排名工具发现某个进程 CPU 占用率非常高,需要终止该进程的运行,

  可以在 top 操作界面中按 k 键,然后在列表上方将会出现“PID to signal/kill [default pid = 3180]:” 的提示信息,根据提示输入指定进程的 PID 号并按 Enter 键, 出现“Send pid 5597 signal [15/sigterm]”的二次确认的提示信息,然后按Enter 键确认即可终止对应的进程

1.3 pgrep(查询进程基本信息)

常用的参数

-l:选项可同时输出对应的进程名以及PID

-U:选项查询特定用户的进程

-t:选项查询在特定终端运行的进程

例1

例2

1.4 pstree(以树形结构列出进程信息)

pstree 命令默认情况下只显示各进程的名称

常用参数

-p:选项使用时可以同时列出对应的PID号

-u:选项可以列出对应的用户名

-a:选项可以列出完整的命令信息

-aup:包括各进程对应的PID 号、用户名、完整命令等信息


二、进程控制(启动进程、调度进程、终止进程)

2.1 启动进程

手工启动进程:由用户手工输入命令或者可执行程序的路径,可以至少启动一个进程

手工启动又可以分为前台启动后台启动

前台启动:进程执行结束并退出以后才能继续输入其他命令

后台启动:

调度启动进程:at、crontab

补充:挂起当前的进程
当Linux操作系统中的命令正在前台执行时(运行尚未结束),按Ctrl+Z组合键可以将当前进程挂起(调入后台并停止执行),这种操作在需要暂停当前进程并进行其他操作时特别有用。例如,打包usr并且调入后台 ,可以按 Ctrl+Z 组合键将该下载任务调入后台并暂停执行

2.2 调度进程(jobs)

2.2.1 jobs:查看处于后台的任务列表

参数:

-l:选项可以同时显示该进程对应的PID号

2.2.2 bg + 后台进程序号

将后台中暂停执行(如按 Ctrl+Z 组合键挂起)的任务恢复运行,继续在后台执行操作

2.2.3 fg + 后台进程序号

可以将后台任务重新恢复到前台运行

2.3 中止进程

2.3.1 kill(根据PID 号作为指定)

kill -数字 PID(常与pgrep配合)

[root@localfzx ~]# pgrep -l "sshd"          //查询目标进程的PID 号
5822 sshd

[root@localfzx ~]# kill 5822                    //终止指定PID 的进程

[root@localfzx ~]# pgrep -l "sshd"          //确认进程已终止

常用数字参数

信号编号信号名含义
0EXIT程序退出时收到该信息
1HUP挂掉电话线或终端连接的挂起信号,这个信号也会造成某些进程在没有终止 的情况下重新初始化
2INT表示结束进程,但并不是强制性的,常用的 "Ctrl+C" 组合键发出就是一个 kill -2 的信号
3UIT退出
9KILLQ杀死进程,即强制结束进程
11SEGV段错误
15TERM正常结束进程,是 kill 命令的默认信号

2.3.2 killall(根据进程名作为指定)

killall [选项] [信号] 进程名(常与ps、pstree配合)

-i:交互式,询问是否要杀死某个进程

-I:忽略进程名的大小写

2.3.3 pkill(根据进程名称、运行该进程的用户、进程的终端等指定)

-U:根据进程所属的用户名终止相应进程

-t:根据进程所在的终端终止相应进程


三、at命令设置计划任务(单次性)

作用:使用at命令设置的计划任务只在指定的时间点执行一次,前提是对应的系统服务atd必须已经运行

at  [HH:MM]  [yyyy-mm-dd](时间+日期)

atq:查询at任务列表

atrm:删除at任务列表

atrm + 1 (删除序号为1的at任务列表)

四、crontab计划任务的配置字段(周期性)

注:时间周期顺序:分→时→天→月→周

主要设置文件

全局配置文件位置:/etc/crontab

系统默认的设置位置:/etc/cron.*

用户定义的设置位置:/var/spool/cron/用户名

管理crontab计划任务

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

在文本模式中进行编辑

例:50 7 * * * /usr/bin/systemctl start sshd.service

路径最好是绝对路径

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

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

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值