Linux | 进程管理命令

1、ps命令:显示进程状态

【语法格式】

ps [参数]

【常用参数】

  • -a:显示所有终端机下执行的程序,除了阶段作业领导者之外
  • a:显示现行终端机下的所有程序,包括其他用户的程序
  • -A:显示所有程序
  • -c:显示CLS和PRI栏位
  • c:列出程序时,显示每个程序真正的指令名称
  • -C <指令名称>:指定执行指令的名称,并列出该指令的程序的状况
  • -d:显示所有查询,但不包括阶段作业领导者的程序
  • -e:与A参数相同
  • e:列出程序时,显示每个程序所使用的环境变量
  • -f:显示UID,PPIP,C与STIME栏位
  • f:用ASCII字符显示树状结构,表达程序间的相互关系

【实例】

将所有进程显示出来

[root@localhost ~]# ps -aux
[root@localhost ~]# ps -A
[root@localhost ~]# ps -eLf

将所有进程显示出来,并输出到ps.txt文件

[root@localhost ~]# ps -aux > ps.txt

查找特定进程信息

[root@localhost ~]# ps -aux | grep ssh

显示特定用户进程信息

[root@localhost ~]# ps -u root

按CPU资源的使用量对进程进行排序

[root@localhost ~]# ps -aux | sort -nk 3

按内存资源的使用量对进程进行排序

[root@localhost ~]# ps -aux | sort -rnk 4

2、top命令:实时显示进程动态

【语法格式】

top [参数]

【常用参数】

  • -b:搭配 “n” 参数一起使用,可以用来将 top 的结果输出到档案内
  • -c:切换显示模式
  • -d:改变显示的更新速度
  • -i:不显示任何闲置 (idle) 或无用 (zombie) 的行程
  • -n:更新的次数,完成后将会退出 top
  • -q:没有任何延迟的显示速度
  • -s:安全模式,将交谈式指令取消, 避免潜在的危机

【实例】

显示进程信息

[root@localhost ~]# top

显示完整的进程信息

[root@localhost ~]# top -c

以批处理模式显示程序信息

[root@localhost ~]# top -b -n 2 > ps.txt

【说明】

top 命令执行结果的前 5 行为系统整体的统计信息,其所代表的含义如下:

  • 第 1 行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为 1 分钟、 5分钟、 15 分钟内的平均值,数值越小意味着负载越低)。
  • 第 2 行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。
  • 第 3 行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。
  • 第 4 行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。
  • 第 5 行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。

3、pstree命令:以树状图显示进程

【语法格式】

pstree [参数]

【常用参数】

  • -a:显示每个程序的完整指令,包含路径,参数或是常驻服务的标示
  • -c:不使用精简标示法
  • -G:使用VT100终端机的列绘图字符
  • -h:列出树状图时,特别标明现在执行的程序

【注意】

pstree命令将所有行程以树状图显示,树状图将会以 pid (如果有指定) 或是以 init 这个基本行程为根 (root),如果有指定使用者 id,则树状图会只显示该使用者所拥有的进程。

【实例】

显示当前所有进程的进程号和进程ID

[root@linuxcool ~]# pstree -p

4、nice命令:调整进程的优先级

【语法格式】

nice [参数] [命令]

【常用参数】

  • -n:后面接一个数值,范围为-20~19

【注意】

nice命令表示给新执行的目录给予新的nice值。系统的后台工作中,某些比较不重要的进程在运行,例如,备份,由于备份工作相当消耗系统资源,这个时候就可以调大备份命令的nice值,可以使系统资源更合理使用。

【实例】

创建一个a.sh脚本,输入以下内容,执行脚本,然后使用nice修改进程优先级

创建a.sh脚本。

使用top命令查看此脚本(top -p 6172)

修改nice值,设置进程优先级,然后使用top命令查看进程NI值

[root@linuxcool ~]# nice -n 10 ./a.sh

5、nohup命令:后端运行程序

【语法格式】

nohup [参数]

【常用参数】

  • --help:在线帮助
  • --version:显示版本信息

【注意】

nohup命令可以将程序以忽略挂起信号的方式运行起来,被运行的程序的输出信息将不会显示到终端。

【实例】

使用nohup命令在后台运行程序

[root@localhost ~]# nohup ./a.sh &

6、jobs命令:显示系统中的任务列表和运行状态

【语法格式】

jobs [参数] [目录]

【常用参数】

  • -l:显示作业列表时包括进程号
  • -n:显示上次使用jobs后状态发生变化的作业
  • -p:显示作业列表时仅显示其对应的进程号
  • -r:仅显示运行的(running)作业
  • -s:仅显示暂停的(stopped)作业

【注意】

jobs命令可以显示任务号以及对应的进程号,其中,任务号是以普通用户的角度进行的,而进程号则是从系统管理员的角度来看的。一个任务可以对应一个或者多个进程号。

【实例】

显示当前的作业列表

[root@localhost ~]# jobs

7、fg命令:将后台作业放到前台终端运行

【语法格式】

fg [参数]

【常用参数】

  • 作业标识:指定要放到前台的作业标识号

【实例】

  • 使用fg命令将任务号为1的任务从后台执行转换到前台执行
[root@localhost ~]# fg 1 

8、bg命令:将前台作业放到后台运行

【语法格式】

bg [参数]

【常用参数】

  • 作业标识:指定要放到前台的作业标识号

【实例】

使用bg命令将任务号为1的任务放到后台继续执行

[root@localhost ~]# bg 1

使用bg命令与在指令后面添加符号”&”的效果是一样的,使用&将find / -name password放到后台执行:

[root@localhost ~]# find / -name password &
posted @ 2020-09-27 23:15  Cyzhouke  阅读(272)  评论(0编辑  收藏  举报