我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Linux查看进程的所有信息的方法示例

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Linux查看进程的所有信息的方法示例

服务器上有一个任务进程,当我们使用ps -ef | grep task查看时,只能得到一些最基本的信息,假如我们需要知道对应的文件路径、启动命令的完整路径,就无从下手了。

今天教大家一个方法来查看进程的所有信息,包括启动命令的完整路径、对应的文件完整路径等等信息:ls -l /proc/PID

例如使用ps -ef | grep webhook查看进程时,只能得到如下信息


> ps -ef | grep webhook
root   15902   1 0 Aug15 ?    00:00:00 python -u class="lazy" data-src/webhook.py
root   30639 30612 0 22:50 pts/0  00:00:00 grep --color=auto webhook

然后执行 ls -l /proc/15902


> ll /proc/15902
dr-xr-xr-x 2 root root 0 Sep 18 22:52 attr
-rw-r--r-- 1 root root 0 Sep 18 22:52 autogroup
-r-------- 1 root root 0 Sep 18 22:52 auxv
-r--r--r-- 1 root root 0 Sep 18 22:52 cgroup
--w------- 1 root root 0 Sep 18 22:52 clear_refs
-r--r--r-- 1 root root 0 Aug 15 16:48 cmdline
-rw-r--r-- 1 root root 0 Sep 18 22:52 comm
-rw-r--r-- 1 root root 0 Sep 18 22:52 coredump_filter
-r--r--r-- 1 root root 0 Sep 18 22:52 cpuset
lrwxrwxrwx 1 root root 0 Aug 15 16:48 cwd -> /services/apps/webhook
-r-------- 1 root root 0 Sep 18 22:52 environ
lrwxrwxrwx 1 root root 0 Aug 15 16:48 exe -> /usr/bin/python2.7
dr-x------ 2 root root 0 Aug 15 16:48 fd
dr-x------ 2 root root 0 Sep 18 22:52 fdinfo
-rw-r--r-- 1 root root 0 Sep 18 22:52 gid_map
-r-------- 1 root root 0 Sep 18 22:52 io
-r--r--r-- 1 root root 0 Sep 18 22:52 limits
...

有几个主要的文件我们可以关注下:

  • cwd:文件所在目录
  • exe:执行命令的完整路径
  • environ:执行命令时的环境变量

补充:


#lsof 列出当前系统打开文件,常与-i选项使用,用于查看某个端口被哪个程序占用
[root@bogon ~]# lsof -i:80
COMMAND PID  USER  FD  TYPE DEVICE SIZE/OFF NODE NAME
httpd  6701  root  4u IPv6 64259   0t0 TCP *:http (LISTEN)
httpd  6702 apache  4u IPv6 64259   0t0 TCP *:http (LISTEN)
httpd  6703 apache  4u IPv6 64259   0t0 TCP *:http (LISTEN)
httpd  6704 apache  4u IPv6 64259   0t0 TCP *:http (LISTEN)
httpd  6705 apache  4u IPv6 64259   0t0 TCP *:http (LISTEN)
httpd  6706 apache  4u IPv6 64259   0t0 TCP *:http (LISTEN)
[root@bogon ~]# lsof -i:22
COMMAND PID USER  FD  TYPE DEVICE SIZE/OFF NODE NAME
sshd   931 root  3u IPv4 20955   0t0 TCP *:ssh (LISTEN)
sshd   931 root  4u IPv6 20965   0t0 TCP *:ssh (LISTEN)
sshd  3926 root  3u IPv4 36374   0t0 TCP bogon:ssh->bogon:53436 (ESTABLISHED)
[root@bogon ~]# 


#获取终端上所有用户的有关进程的所有信息
[root@bogon ~]# ps -aux
USER    PID %CPU %MEM  VSZ  RSS TTY   STAT START  TIME COMMAND
root     1 0.0 0.4 128092 4724 ?    Ss  Jun25  0:03 /usr/lib/systemd/syste
root     2 0.0 0.0   0   0 ?    S  Jun25  0:00 [kthreadd]
root     3 0.0 0.0   0   0 ?    S  Jun25  0:00 [ksoftirqd/0]
root     6 0.0 0.0   0   0 ?    S  Jun25  0:00 [kworker/u256:0]
root     7 0.0 0.0   0   0 ?    S  Jun25  0:00 [migration/0]
root     8 0.0 0.0   0   0 ?    S  Jun25  0:00 [rcu_bh]
root     9 0.0 0.0   0   0 ?    R  Jun25  0:01 [rcu_sched]
root     10 0.0 0.0   0   0 ?    S  Jun25  0:00 [watchdog/0]
root     12 0.0 0.0   0   0 ?    S<  Jun25  0:00 [khelper]
root     13 0.0 0.0   0   0 ?    S  Jun25  0:00 [kdevtmpfs]
root     14 0.0 0.0   0   0 ?    S<  Jun25  0:00 [netns]
root     15 0.0 0.0   0   0 ?    S  Jun25  0:00 [khungtaskd]
root     16 0.0 0.0   0   0 ?    S<  Jun25  0:00 [writeback]
root     17 0.0 0.0   0   0 ?    S<  Jun25  0:00 [kintegrityd]
root     18 0.0 0.0   0   0 ?    S<  Jun25  0:00 [bioset]
root     19 0.0 0.0   0   0 ?    S<  Jun25  0:00 [kblockd]
root     20 0.0 0.0   0   0 ?    S<  Jun25  0:00 [md]
root     26 0.0 0.0   0   0 ?    S  Jun25  0:00 [kswapd0]
root     27 0.0 0.0   0   0 ?    SN  Jun25  0:00 [ksmd]
root     28 0.0 0.0   0   0 ?    SN  Jun25  0:00 [khugepaged]
root     29 0.0 0.0   0   0 ?    S  Jun25  0:00 [fsnotify_mark]
root     30 0.0 0.0   0   0 ?    S<  Jun25  0:00 [crypto]
root     38 0.0 0.0   0   0 ?    S<  Jun25  0:00 [kthrotld]
root     40 0.0 0.0   0   0 ?    S<  Jun25  0:00 [kmpath_rdacd]
root     41 0.0 0.0   0   0 ?    S<  Jun25  0:00 [kpsmoused]
root     43 0.0 0.0   0   0 ?    S<  Jun25  0:00 [ipv6_addrconf]
root     62 0.0 0.0   0   0 ?    S<  Jun25  0:00 [deferwq]
root     94 0.0 0.0   0   0 ?    S  Jun25  0:00 [kauditd]
root    233 0.0 0.0   0   0 ?    S<  Jun25  0:00 [mpt_poll_0]
root    234 0.0 0.0   0   0 ?    S<  Jun25  0:00 [ata_sff]
root    235 0.0 0.0   0   0 ?    S<  Jun25  0:00 [mpt/0]
root    241 0.0 0yHsju.0   0   0 ?    S  Jun25  0:00 [scsi_eh_0]
root    243 0.0 0.0   0   0 ?    S<  Jun25  0:00 [scsi_tmf_0]
root    245 0.0 0.0   0   0 ?    S  Jun25  0:00 [scsi_eh_1]
root    246 0.0 0.0   0   0 ?    S  Jun25  0:00 [kworker/u256:2]
。。。。。。


#获取某服务程序的所有进程号
[root@bogon ~]# pgrep httpd
6701
6702
6703
6704
6705
6706
#杀死进程,killall通过程序名字杀死所有进程
[root@bogon ~]# killall httpd
[root@bogon ~]# pgrep httpd
[root@bogon ~]# 
#kill杀死程序
[root@bogon ~]# cat a.sh  #死循环
#!/bin/bash
while true
do
  echo "linux">/dev/null
done
[root@bogon ~]# ./a.sh
^Z
[1]+ Stopped         ./a.sh
[root@bogon ~]# ps
  PID TTY     TIME CMD
 3930 pts/1  00:00:00 bash
 11719 pts/1  00:00:01 a.sh
 11729 pts/1  00:00:00 ps
[root@bogon ~]# kill 11719   #偶然间发现这个问题,原因暂时不明
[root@bogon ~]# ps
  PID TTY     TIME CMD
 3930 pts/1  00:00:00 bash
 11719 pts/1  00:00:01 a.sh
 11733 pts/1  00:00:00 ps
[root@bogon ~]# kill -9 11719 #既然普通kill无法杀死,那么就发送-9信号直接强制杀死,问题解决
[root@bogon ~]# ps
  PID TTY     TIME CMD
 3930 pts/1  00:00:00 bash
 11734 pts/1  00:00:00 ps
[1]+ Killed         ./a.sh
[root@bogon ~]# ./a.sh &
[1] 11735
[root@bogon ~]# ps
  PID TTY     TIME CMD
 3930 pts/1  00:00:00 bash
 11735 pts/1  00:00:01 a.sh
 11736 pts/1  00:00:00 ps
[root@bogon ~]# kill 11735  #普通后台运行程序可以直接kill
[root@bogon ~]# ps
  PID TTY     TIME CMD
 3930 pts/1  00:00:00 bash
 11737 pts/1  00:00:00 ps
[1]+ Terminated       ./a.sh
[root@bogon ~]# 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Linux查看进程的所有信息的方法示例

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux查看进程的所有信息的方法示例

服务器上有一个任务进程,当我们使用ps -ef | grep task查看时,只能得到一些最基本的信息,假如我们需要知道对应的文件路径、启动命令的完整路径,就无从下手了。 今天教大家一个方法来查看进程的所有信息,包括启动命令的完整路径、对应
2022-06-04

linux查看进程的示例方法

这篇“linux查看进程的示例方法”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“linux查看进程的示例方法”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让我们
2023-06-06

Linux如何查看进程栈信息示例

今天在linux上调试程序程序的时候发现有时候程序会莫名其妙的hang住,于是就想能不能找到当时程序有那些线程,都在做什么。找了一下linux命令,还真可以满足我的需求。下面看一个小例子。 先准备一段程序,为了简单起见这里使用python来
2022-06-04

Linux怎么查看用户的所有信息

本篇内容介绍了“Linux怎么查看用户的所有信息”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!通过使用 /etc/passwd 文件,get
2023-06-28

在Linux中查看所有正在运行的进程的方法

可以使用ps命令。它能显示当前运行中进程的相关信息,包括进程的PID。linux和UNIX都支持ps命令,显示所有运行中进程的相关信息。 ps命令能提供一份当前进程的快照。如果想状态可以自动刷新,可
2022-06-04

linux查看硬盘信息的方法

这篇文章主要介绍linux查看硬盘信息的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!什么是Linux系统Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任务、支持多线程和
2023-06-14

Linux查看硬件信息的方法

本篇内容介绍了“Linux查看硬件信息的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. lshwlshw命令显示详细硬件信息。如果要
2023-06-17

linux查看用户信息的方法

这篇文章给大家分享的是有关linux查看用户信息的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。什么是Linux系统Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任务
2023-06-14

linux查看进程的方法有哪些

Linux查看进程的方法有以下几种:1. 使用ps命令:ps命令用于显示当前系统中运行的进程。常用的选项包括:- ps aux:显示所有进程的详细信息,包括进程号(PID)、CPU利用率、内存占用等。- ps -ef:显示所有进程的详细信息
2023-08-18

linux查看sleeping进程的方法有哪些

在Linux中,可以使用以下方法查看睡眠进程:1. 使用ps命令查看:通过ps命令可以查看系统中的所有进程信息,包括睡眠进程。可以使用以下命令:```ps -ef | grep 'D'```上述命令会显示所有状态为D(睡眠)的进程。2. 使
2023-09-16

Linux下查看进程的方法有哪些

这篇文章将为大家详细讲解有关Linux下查看进程的方法有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基
2023-06-28

Mysql查询所有表和字段信息的方法

这篇文章主要介绍了Mysql查询所有表和字段信息,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2023-05-16

怎么在Linux中查看所有正在运行的进程

这期内容当中小编将会给大家带来有关怎么在Linux中查看所有正在运行的进程,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在Linux系统中运行着很多的进程,我们可以使用ps、top等查看多有正在运行的进程
2023-06-28

centos进程查看的方法有哪些

在CentOS中,有多种方法可以查看进程。以下是一些常用的方法:1. 使用ps命令:可以通过ps命令查看当前正在运行的进程。常见的用法有:```ps -aux // 显示所有正在运行的进程ps -ef // 显示所有进程的完整信息ps
2023-09-11

centos查看进程的方法有哪些

使用ps命令查看进程信息:ps aux该命令会列出当前系统中所有进程的详细信息,包括进程ID、CPU占用率、内存占用率等。使用pstree命令查看进程树:pstree该命令会以树状结构显示当前系统中所有进程的关系。使用top命令实时查看进程
centos查看进程的方法有哪些
2024-03-11

查看Linux系统版本信息的方法是什么

查看Linux系统版本信息的方法是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、查看Linux内核版本命令(两种方法):1、cat /proc/version2、u
2023-06-28

Linux查看进程PID的方法(linux查进程的pid)附带自动kill 掉

Linux查看进程PID的方法 Linux作为一款多用户、多任务的操作系统,可以同时处理多个任务,每个任务的执行都由进程来实现。在每个进程执行的过程中,都会有一个唯一标识符,即称为PID(Process Identifier)进程ID。Li
2023-08-18

LINUX查看进程的4种方法(小结)

进程是在 CPU 及内存中运行的程序代码,而每个进程可以创建一个或多个进程(父子进程)。 **查看进程方法:** 第一种:ps auxps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也
2022-06-03

Linux查看服务器硬件信息的方法步骤

Hi,大家好;今天是双12,大家剁手了没。今天给大家带来的是《linux查看服务器上的硬件信息》本篇文章的示例全部是在服务器(Inspur SA5112M4)上实现的,有些命令在虚拟机上达不到效果查看服务器型号、序列号root@zhangd
2022-06-04

编程热搜

目录