Linux 学习笔记 06 —— 进程管理(1) 查看、杀死

文章介绍了Linux系统中管理进程的常用命令如ps、pstree和kill,包括它们的参数、功能和示例。此外,还提到了Java开发者的面试准备,特别是刷题和面试技巧的学习资源。
摘要由CSDN通过智能技术生成

e  列出进程时,显示每个进程所使用的环境变量。

-l或l  采用详细的格式来显示进程状况。。

-p<进程识别码>  指定进程识别码,并列出该进程的状况。

p<进程识别码>  此参数的效果和指定"-p"参数相同,只在列表格式方面稍有差异。

r  只列出现行终端机正在执行中的进程。

-T  显示现行终端机下的所有进程。

-u<用户识别码>  此参数的效果和指定"-U"参数相同。

u  以用户为主的格式来显示进程状况。

-U<用户识别码>  列出属于该用户的进程的状况,也可使用用户名称来指定。

U<用户名称>  列出属于该用户的进程的状况。

x  显示所有进程,不以终端机来区分。

-<进程识别码>  此参数的效果和指定"p"参数相同。

–help  在线帮助。

举例

USER 用户名

UID 用户ID(User ID)

PID 进程ID(Process ID)

PPID 父进程的进程ID(Parent Process id)

SID 会话ID(Session id)

%CPU 进程的cpu占用率

%MEM 进程的内存占用率

VSZ 进程所使用的虚存的大小(Virtual Size)

RSS 进程使用的驻留集大小或者是实际内存的大小,Kbytes字节。

TTY 与进程关联的终端(tty)

STAT 进程的状态:进程状态使用字符表示的(STAT的状态码)

START 进程启动时间和日期

TIME 进程使用的总cpu时间

COMMAND 正在执行的命令行命令

NI 优先级(Nice)

PRI 进程优先级编号(Priority)

WCHAN 进程正在睡眠的内核函数名称;该函数的名称是从/root/system.map文件中获得的。

FLAGS 与进程相关的数字标识

  1. 列出所有进程

方式一:

songyangji@SongyangJi-Ubuntu-DeskStop:~$ ps -aux

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 1 0.0 0.2 101680 10384 ? Ss 19:09 0:01 /sbin/init splash

root 2 0.0 0.0 0 0 ? S 19:09 0:00 [kthreadd]

root 3 0.0 0.0 0 0 ? I< 19:09 0:00 [rcu_gp]

root 4 0.0 0.0 0 0 ? I< 19:09 0:00 [rcu_par_gp]

方式二:

songyangji@SongyangJi-Ubuntu-DeskStop:~$ ps -ef

UID PID PPID C STIME TTY TIME CMD

root 1 0 0 3月11 ? 00:00:01 /sbin/init splash

root 2 0 0 3月11 ? 00:00:00 [kthreadd]

root 3 2 0 3月11 ? 00:00:00 [rcu_gp]

root 4 2 0 3月11 ? 00:00:00 [rcu_par_gp]

  1. 显示某个用户的进程

[root@itcast ~]# ps -u root

PID TTY TIME CMD

1 ? 00:01:48 systemd

2 ? 00:00:00 kthreadd

3 ? 00:00:21 ksoftirqd/0

5 ? 00:00:00 kworker/0:0H

  1. 显示进程名进程信息

[root@itcast ~]# ps -C bash

PID TTY TIME CMD

10565 pts/1 00:00:00 bash

11145 pts/1 00:00:00 bash

86546 pts/0 00:00:00 bash

[root@itcast ~]#

  1. 通过进程号显示进程详细信息

songyangji@SongyangJi-Ubuntu-DeskStop:~$ ps -p 51172

PID TTY TIME CMD

51172 pts/0 00:00:00 bash

  1. 指定显示字段

[root@itcast ~]# ps -e -o pid,uname,pcpu,pmem,comm

PID USER %CPU %MEM COMMAND

1 root 0.0 0.1 systemd

2 root 0.0 0.0 kthreadd

3 root 0.0 0.0 ksoftirqd/0

5 root 0.0 0.0 kworker/0:0H

7 root 0.0 0.0 migration/0

  1. 查找特定进程信息 ( 管道| + grep)

[root@itcast ~]# ps -ef | grep ssh

root 1183 1 0 8月08 ? 00:00:00 /usr/sbin/sshd -D

deng 2286 2111 0 8月08 ? 00:00:01 /usr/bin/ssh-agent /bin/sh -c exec -l /bin/bash -c “env GNOME_SHELL_SESSION_MODE=classic gnome-session --session gnome-classic”

root 10561 1183 0 21:24 ? 00:00:00 sshd: deng [priv]

deng 10563 10561 0 21:24 ? 00:00:00 sshd: deng@pts/1

root 16403 11145 0 22:18 pts/1 00:00:00 grep --color=auto ssh

[root@itcast ~]#

pstree


这个命令和ps差不多,只不过是以树状图的形式显示出来。

Linux系统中pstree命令的英文全称是“process tree”,即将所有行程以树状图显示,树状图将会以 pid (如果有指定) 或是以 init 这个基本行程为根 (root)。

如果有指定使用者 id,则树状图会只显示该使用者所拥有的行程。

  • 使用

pstree 参数

-a  显示每个程序的完整指令,包含路径,参数或是常驻服务的标示。

-c  不使用精简标示法。

-G  使用VT100终端机的列绘图字符。

-h  列出树状图时,特别标明执行的程序。

-H<程序识别码>  此参数的效果和指定"-h"参数类似,但特别标明指定的程序。

-l  采用长列格式显示树状图。

-n  用程序识别码排序。预设是以程序名称来排序。

-p  显示程序识别码。

-u  显示用户名称。

-U  使用UTF-8列绘图字符。

-V  显示版本信息。

  1. 以树状图显示进程

songyangji@SongyangJi-Ubuntu-DeskStop:~$ pstree

systemd─┬─ModemManager───2*[{ModemManager}]

├─NetworkManager───2*[{NetworkManager}]

├─accounts-daemon───2*[{accounts-daemon}]

├─avahi-daemon───avahi-daemon

├─colord───2*[{colord}]

├─cron

├─cups-browsed───2*[{cups-browsed}]

├─cupsd

├─dbus-daemon

├─gdm3─┬─gdm-session-wor─┬─gdm-x-session─┬─Xorg───9*[{Xorg}]

│ │ │ ├─gnome-session-b─┬─ssh-agent

│ │ │ │ └─2*[{gnome-session-b}]

│ │ │ └─2*[{gdm-x-session}]

│ │ └─2*[{gdm-session-wor}]

│ └─2*[{gdm3}]

  1. 显示当前所有进程的进程号和进程id

[root@itcast ~]# pstree -p

systemd(1)─┬─ModemManager(676)─┬─{ModemManager}(716)

│ └─{ModemManager}(719)

├─NetworkManager(680)─┬─dhclient(9982)

│ ├─{NetworkManager}(745)

│ └─{NetworkManager}(749)

├─VGAuthService(681)

├─abrt-watch-log(671)

├─abrt-watch-log(672)

├─abrtd(632)

  1. 显示指定进程号树状信息

[root@itcast ~]# pstree 10565

bash───su───bash───pstree

[root@itcast ~]#

kill


kill命令用来删除执行中的程序或工作。

  • 列出所有信号名称

[deng@itcast ~]$ kill -l

  1. SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP

  2. SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1

  3. SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM

  4. SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP

  5. SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

独家面经总结,超级精彩

本人面试腾讯,阿里,百度等企业总结下来的面试经历,都是真实的,分享给大家!

image

image

image

image

Java面试准备

准确的说这里又分为两部分:

  1. Java刷题
  2. 算法刷题

Java刷题:此份文档详细记录了千道面试题与详解;

image

image

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!
业总结下来的面试经历,都是真实的,分享给大家!

[外链图片转存中…(img-uD9UIkfg-1712169277599)]

[外链图片转存中…(img-J7pzARtk-1712169277599)]

[外链图片转存中…(img-XFLntVDX-1712169277599)]

[外链图片转存中…(img-m1L9xjfP-1712169277600)]

Java面试准备

准确的说这里又分为两部分:

  1. Java刷题
  2. 算法刷题

Java刷题:此份文档详细记录了千道面试题与详解;

[外链图片转存中…(img-Zosf7gHz-1712169277600)]

[外链图片转存中…(img-9KJUm9th-1712169277600)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

  • 9
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值