Linux如何根据进程ID查找启动程序的路径

Linux如何根据进程ID查找启动程序的路径,第1张

正常运行中的进程树关系如下(为了简化,只显示一部分进程):

$ ps x

PID TTY STAT TIME COMMAND

17279 pts/8 Ss 0:00 -bash

18618 pts/8 R+ 0:00 ps xf

18283 pts/8 S 0:00 A

18284 pts/8 S 0:00 A

18321 pts/8 S 0:00 a

18322 pts/8 S 0:00 a

出问题时进程的状态为:

$ ps x

PID TTY STAT TIME COMMAND

17279 pts/8 Ss 0:00 -bash

18618 pts/8 R+ 0:00 ps xf

18283 pts/8 Z 0:00 A<defunct>

18284 pts/8 S 0:00 A

18321 pts/8 S 0:00 a

18322 pts/8 S 0:00 a

找到某进程启动路径的方法是:

1我们可以从ps命令中得到僵死进程的PID,如上例中18283

2进入/proc目录下以该PID命名的目录中

3输入ls -l ,结果中 exe链接对应的就是可执行文件的全路经

$ ls -l /proc/18283

总计 0

dr-xr-xr-x 2 qhkf qhkf 0 01-06 11:14 attr

-r-------- 1 qhkf qhkf 0 01-06 11:14 auxv

-r--r--r-- 1 qhkf qhkf 0 01-06 10:38 cmdline

-r--r--r-- 1 qhkf qhkf 0 01-06 11:14 cpuset

lrwxrwxrwx 1 qhkf qhkf 0 01-06 11:14 cwd -> /v8t/qhkf/risk_b/kssmdb

-r-------- 1 qhkf qhkf 0 01-06 11:14 environ

lrwxrwxrwx 1 qhkf qhkf 0 01-06 11:14 exe -> /v8t/qhkf/risk_b/kssmdb/A

dr-x------ 2 qhkf qhkf 0 01-06 10:38 fd

-rw-r--r-- 1 qhkf qhkf 0 01-06 11:14 loginuid

-r--r--r-- 1 qhkf qhkf 0 01-06 11:14 maps

-rw------- 1 qhkf qhkf 0 01-06 11:14 mem

-r--r--r-- 1 qhkf qhkf 0 01-06 11:14 mounts

-r-------- 1 qhkf qhkf 0 01-06 11:14 mountstats

-r--r--r-- 1 qhkf qhkf 0 01-06 11:14 numa_maps

-rw-r--r-- 1 qhkf qhkf 0 01-06 11:14 oom_adj

-r--r--r-- 1 qhkf qhkf 0 01-06 11:14 oom_score

lrwxrwxrwx 1 qhkf qhkf 0 01-06 11:14 root -> /

-r--r--r-- 1 qhkf qhkf 0 01-06 11:14 schedstat

-r-------- 1 qhkf qhkf 0 01-06 11:14 smaps

-r--r--r-- 1 qhkf qhkf 0 01-06 10:38 stat

-r--r--r-- 1 qhkf qhkf 0 01-06 11:14 statm

-r--r--r-- 1 qhkf qhkf 0 01-06 10:38 status

dr-xr-xr-x 6 qhkf qhkf 0 01-06 11:14 task

-r--r--r-- 1 qhkf qhkf 0 01-06 11:14 wchan

剩下的就是排查问题了OVER

见上图,用鼠标按照上述三个步骤先后次序,一一单击进行选择和设置,“生成输出路径”。

那么,在你的程序代码里使用:

MsgBox(ApplicationStartupPath)

显示的就是,你的当前默认的相对路径。

也可以按照自己的需要重新设置该路径。

查不到,可以使用process explorer

Process Explorer 是一款免费的增强型任务管理器,是最好的进程管理器 它能让使用者了解看不到的在后台执行的处理程序,可以使用它方便地管理你的程序进程 能监视,挂起,重启,强行终止任何程序,包括系统级别的不允许随便终止的关键进程和十分隐蔽的顽固木马 除此之外,它还详尽地显示计算机信息: CPU,内存,I/O使用情况,可以显示一个程序调用了哪些动态链接库DLL,句柄,模块,系统进程 以目录树的方式查看进程之间的归属关系,可以对进程进行调试 可以查看进程的路径,以及公司,版本等详细信息,多色彩显示服务进程,很酷的曲线图 可以替换系统自带的任务管理器,有了它,系统自带的任务管理器就可以扔进垃圾桶了

苹果电脑mac查看已安装程序安装在哪个目录步骤如下:

1、首先用鼠标点击打开finder。

2、点击左侧应用程序,右侧可以看到应用程序列表。

3、找到您要查找的应用,我这里以微信为例,鼠标右键点击应用图标。

4、在右键菜单中点击显示包内容。

5、这样就可以看到自己应用的安装目录了。

这扬就解决了苹果电脑mac查看已安装程序安装在哪个目录的问题。

OpenFileDialog Diag = new OpenFileDialog();

DiagShowDialog();

上面是选择程序的代码

选择反程序之后的 DiagFileName;就是你这个程序的路径

//DiagFileName;

以上就是关于Linux如何根据进程ID查找启动程序的路径全部的内容,包括:Linux如何根据进程ID查找启动程序的路径、VB.NET中怎么找到EXE程序所在的路径、windows 根据进程pid如何查找程序所在路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9669626.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存