Linux中如何查看进程和控制进程

查看进程的命令如下:
ps命令——查看静态的进程统计信息(一般结合选项使用 ps aux 或 ps -elf 命令)
建议使用 ps -elf 查询,输出的信息更详细些,包括 PPID (对应的父进程 的PID 号)

以上输出信息中,第一行为列表标题,其中各字段的含义描述如下。

USER:启动该进程的用户账号名称;

PID:该进程在系统中的数字 ID 号,在当前系统中是唯一的;

%CPU:CPU占用的百分比;

%MEM:内存占用的百分比;

VSZ:占用虚拟内存(swap 空间)的大小;

RSS:占用常驻内存(物理内存)的大小;

TTY:表明该进程在哪个终端上运行。“ ?” 表示未知或不需要终端;

STAT:显示进程当前的状态,S(休眠)、R(运行)、Z(僵死)、<(高优先级)、N(低优先级)、s(父进程)、+(前台进程);

START:启动该进程的时间;

TIME:该进程占用的CPU时间;

COMMAND:启动该进程的命令的名称;

top 命令——查看进程动态信息(以全屏交互式的界面显示进程排名,及时跟踪系统资源占用情况)

上述输出信息中,开头的部分显示了系统任务、CPU占用、内存占用等信息,相关信息的含义如下:

系统任务(Task)信息 :total ,总进程数; running,正在运行的进程数;sleeping,休眠的进程数;stopped,中止的进程数;zombie,僵死无响应的进程数。

CPU占用信息:us,用户占用;sy,内核占用;ni,优先级调度占用;id,空闲CPU;wa,I/O等待占用;hi,硬件终端占用;si,软件中断占用;st,虚拟化占用。要了解空闲的CPU百分比,主要看 %id 部分。

内存占用(MEM)信息:total,总内存空间;free,空闲内存;used,已用内存;buff / cache,物理内存和交换内存的缓冲区总和。

交换空间(swap) 占用:total,总交换空间;free,空闲交换空间;used,已用交换空间;avail Mem,可用物理空间。

pgrep命令——查询进程信息(可以指定进程的一部分名称进行查询,通常结合 “ - l ” 选项)

pstree命令——查看进程树(该命令查询的信息比较复杂,而且之前的命令完全满足我们查询进程信息的需要,所以就略过,通常使用 pstree -aup 或 pstree {用户名} 来使用)

控制进程的相关命令:

执行等待时间较长的进程时,可以在执行命令的最后面加操作符 “&”,进程启动后会直接放入后台运行

Ctrl+z,可以将当前执行的任务调入后台并暂停执行
jobs  -l   查看当前终端中在后台运行的进程任务,并显示该进程的PID号。

可以使用fg 任务编号(将暂停的进程重新调到前台运行)或 bg 任务编号(将后台暂停执行的任务恢复运行)

终止进程执行

使用 kill 命令终止进程的命令格式: kill PID号 如果无法响应终止信号,可以结合 -9 选项: kill -9 PID号(-9表示强制终止进程,但强制终止会导致程序运行的部分数据丢失,应谨慎使用)

使用 killall 命令终止进程的命令格式:killall 进程名(如 “killall vim”,也可以结合 -9 选项,强制终止,选项格式与kill命令格式一致)

使用 pkill 命令终止进程:可以根据进程的名称,运行该进程的用户,进程所在的终端等多种属性终止特定的进程命令格式与pgrep格式大致相同,也可以加 -9 选项,如:
pkill -9 -U “用户名” -t 指定终端

原文地址:http://blog.51cto.com/14154700/2352028

时间: 2024-08-22 21:59:51

Linux中如何查看进程和控制进程的相关文章

centos linux中怎么查看和修改计算机名/etc/sysconfig/network

centos linux中怎么查看和修改计算机名 查看计算机名:在终端输入hostname 修改的话 hostname +计算机名(重启后失效)要永久修改的话要修改配置文件/etc/sysconfig/network修改hostname=你要改的名字

Linux中如何查看文件的最初创建时间

查看 一个文件的 最初创建时间: Linux中如何查看文件的最初创建时间 linux 目前Linux没有直接查看创建文件的命令,你只能通过文件是否被修改过来进行判断. //查看代码stat 文件名 //例如:[[email protected] ~]# stat 1.txt  File: "1.txt"  Size: 18              Blocks: 8          IO Block: 4096   普通文件Device: fd00h/64768d    Inode

Linux中 终端、作业控制与守护进程

1. 进程组 每个进程除了有一个进程 ID之外,还属于一个进程组.进程组是一个或多个进程的集合. 通常,它们与同一作业相关联,可以接收来自同一终端的各种信号. 每个进程组有一个唯 一的进程组ID.每个进程组都可以有一个组长进程.组长进程的标识是,其进程组 ID等于 其进程ID. 组长进程可以创建一个进程组,创建该组中的进程,然后终止. 只要在某个进程组中一个 进程存在,则该进程组就存在,这与其组长进程是否终止无关. 2.作业 Shell分前后台来控制的不是进程而是 作业(Job)或者进程组( P

Linux中内存查看命令free详解(转)

add by zhj:-/+ buffers/cache行的free列就是实际未使用的内存.free -m中的参数-m是指以MB为单元输出数据 原文:http://liustb.blog.163.com/blog/static/1337080192011718112434416/ free命令用来查看内存的使用情况,与Top命令相比,开销较小. $free –m total          used        free        shared         buffers      

Windows和Linux下如何查看端口被哪个进程占用

Windows: C:/Users/ewanbao>netstat -aon|findstr "123"  TCP    127.0.0.1:55123        0.0.0.0:0                 LISTENING         5092  TCP    127.0.0.1:55123        127.0.0.1:55124        ESTABLISHED     5092  TCP    127.0.0.1:55124        127

Linux基础之查看系统cpu内存进程等信息

Linux系统信息

在linux中如何查看常用命令的源码

Linux中有很多很棒的工具,我们可以在平常的使用中,可以采用查看源码的方式来学习它.以下就以uptime为例来说一说吧. 1.首先,我们要查询一下uptime是由哪个package提供的 #rpm -qf $(which uptime) procps-3.2.8-33.0.1.el6.x86_64 2.接着,我们要来下载带源码的rpm包了,在确保你的OS能连接外网并配置好yum源后,就可以用下面的命令来完成了. yumdownloader --source procps 3.解压 rpm -i

LINUX中如何查看某个端口是否被占用

之前查询端口是否被占用一直搞不明白,问了好多人,终于搞懂了,现在总结下: 1.netstat  -anp  |grep   端口号 如下,我以3306为例,netstat  -anp  |grep  3306(此处备注下,我是以普通用户操作,故加上了sudo,如果是以root用户操作,不用加sudo即可查看),如下图1: 图1 图1中主要看监控状态为LISTEN表示已经被占用,最后一列显示被服务mysqld占用,查看具体端口号,只要有如图这一行就表示被占用了. 2.netstat   -nult

debian linux 中如何查看软件包是否已经安装和如何安装、卸载软件

练习 1 方案:确定软件包是否安装 如果您不确定某个软件包是否已经安装,可以使用 dpkg 的 -l (L的小写) 选项: $ dpkg -l zsh No packages found matching zsh. 上面结果这表明 zsh 没有 安装. 练习 2 的方案. 搜索软件包 可以使用 apt-cache 命令和它的 search 子命令来搜索软件包: zsh,如清单 1 所示. 清单 1. 使用 apt-cache 搜索 zsh $ apt-cache search zsh kdesd