服务器上有一个任务进程,当我们使用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 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 0.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 ~]#

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

linux进程khungtaskd,Linux查看进程的所有信息的方法示例相关推荐

  1. linux ps内存占用率,linux ps命令,查看某进程cpu和内存占用率情况, linux ps命令,查看进程cpu和内存占用率排序。 不指定...

    背景:有时需要单看某个进程的CPU及占用情况,有时需要看整体进程的一个占用情况. 一. linux ps命令,查看某进程cpu和内存占用率情况 [root@test vhost]# ps aux US ...

  2. linux top命令 动态查看进程详解

    文章目录 linux top命令 动态查看进程详解以及使用方法 top命令的输出,可分为上下两个部分 上面部分:整个系统的资源的使用状态 下面部分:单个进程的资源使用状态 上面部分详解: 第一行:由三 ...

  3. linux查看pid对应的进程,linux系统中快速查看进程pid的方法

    linux系统中快速查看进程pid的方法 一个很简单的'命令,pgrep,可以迅速定位包含某个关键字的进程的pid:使用这个命令,再也不用ps aux 以后去对哪个进程的pid了 用法: pgrep ...

  4. Linux 如何创建进程函数与查看进程

    进程创建函数 进程就是pcb,意味着创建一个进程,就是创建一个pcb pid_t fork(void) –通过复制调用进程(父进程)创建一个新的进程(子进程) 创建一个新的pcb,然后从父进程pcb中 ...

  5. linux查看80端口连接ip,Linux通过netstat命令查看80端口连接数的方法

    服务器上的一些统计数据: 1)统计80端口连接数 netstat -nat|grep -i "80"|wc -l 2)统计httpd协议连接数 ps -ef|grep httpd| ...

  6. Linux常用指令---ps(查看进程)

    Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信 ...

  7. linux查看进程自身全路径,在linux环境下如何查看进程的全路径

    一般用过linux的人都知道ps -ef|grep XXX 可是用ps看到的不是全路径, ps -ef|grep http 500       5948 15608  0 18:09 pts/0    ...

  8. Linux系统常用命令查看进程的用法

    使用Linux系统怎么用Linux查看进程呢?良许教程网的小编认为首先必须要了解当前进程的情况,也就是需要查看当前进程,ps命令就是最基本进程查看命令.使用该命令可以确定有哪些进程正在运行和运行的状态 ...

  9. linux使用ps下查看进程运行的时间 【转】

    文章来源:linux下查看进程运行的时间 可通过ps 来查看,通过参数 -o 来查看 例: ps -eo pid,tty,user,comm,lstart,etime | grep init 参数说明 ...

最新文章

  1. 第二阶段 铁大Facebook——十天冲刺(七)
  2. CocosEditor 1.0Final-IDEA13.0和1.5-IDEA13.1 发布–2014.03.25
  3. 任给十进制整数,请从低位到高位……
  4. Cityengine, 3ds MAX, FME
  5. 国产杀毒软件连续因“作弊”遭全球权威评测机构指责
  6. 【程序员的自我修养——链接、装载与库】笔记
  7. Page Cache与Page回写
  8. Android串口示波器,解读一个超赞的开源串口虚拟示波器项目
  9. VC6下编译fltk-1.3.5
  10. hp电脑测试软件,HP惠普笔记本电池检测工具Battery Check V4.1.0.2中文官方版
  11. Java实现 蓝桥杯 生命游戏
  12. STM32----矩阵按键
  13. 恒生UFX 统一接入介绍
  14. 哈希表、哈希桶(C++实现)
  15. 计算机二级excel怎么绝对引用,excel中绝对引用的快捷键
  16. html中电子邮件地址怎么写,电子邮件地址怎么写
  17. java 控制台聊天昵称_简单的java控制台聊天室实现
  18. python电子表格类_python合并同类型excel表格的方法
  19. 几种常见的服务器攻击类型
  20. 手把手教你搭建属于自己的技术博客

热门文章

  1. 点击图片传值到text 尚未解决
  2. 获取访问者的IP地址
  3. 思科基本配置脚本命令
  4. linux和aix设置时间
  5. linux gcc-9.2.0 源码编译
  6. golang 执行外部命令 超时处理 exec.CommandContext
  7. LDAP 轻量级目录访问协议 介绍
  8. python序列化和反序列化
  9. 证书格式pfx和cer的区别及转换
  10. 编写 Debugging Tools for Windows 扩展,第 3 部分:客户端和回调 (windbg 插件 扩展)