Linux中怎么通过PID号找到对应的进程名及所在目录

原文:Linux中怎么通过PID号找到对应的进程名及所在目录

  有时候通过top命令可以看到有个别进程占用的内存比较大,但是top无法直接查看到进程名以及进程所在的目录。所以我们可以通过以下方法来定位。

  首先需要知道PID号,可以通过top命令获取。

  查看进程名:我们可以用ps看以下大致信息(ps出来的信息个人觉得比较乱,不是很方便查找)

[[email protected] 28990]# ps -aux |grep -v grep|grep 28990
200      28990  0.7 14.0 5112056 1128224 ?     Ssl  Sep26 231:10 /opt/java/bin/java -server -Dinstall4j.jvmDir=/opt/java -Dexe4j.moduleName=/opt/sonatype/nexus/bin/nexus -XX:+UnlockDiagnosticVMOptions -Dinstall4j.launcherId=245 -Dinstall4j.swt=false -Di4jv=0 -Di4jv=0 -Di4jv=0 -Di4jv=0 -Di4jv=0 -Xms1200m -Xmx1200m -XX:MaxDirectMemorySize=2g -Djava.util.prefs.userRoot=/nexus-data/javaprefs -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+LogVMOutput -XX:LogFile=../sonatype-work/nexus3/log/jvm.log -XX:-OmitStackTraceInFastThrow -Djava.net.preferIPv4Stack=true -Dkaraf.home=. -Dkaraf.base=. -Dkaraf.etc=etc/karaf -Djava.util.logging.config.file=etc/karaf/java.util.logging.properties -Dkaraf.data=../sonatype-work/nexus3 -Djava.io.tmpdir=../sonatype-work/nexus3/tmp -Dkaraf.startLocalConsole=false -Di4j.vpt=true -classpath /opt/sonatype/nexus/.install4j/i4jruntime.jar:/opt/sonatype/nexus/lib/boot/nexus-main.jar:/opt/sonatype/nexus/lib/boot/org.apache.karaf.main-4.0.9.jar:/opt/sonatype/nexus/lib/boot/org.osgi.core-6.0.0.jar:/opt/sonatype/nexus/lib/boot/org.apache.karaf.diagnostic.boot-4.0.9.jar:/opt/sonatype/nexus/lib/boot/org.apache.karaf.jaas.boot-4.0.9.jar com.install4j.runtime.launcher.UnixLauncher run 9d17dc87   org.sonatype.nexus.karaf.NexusMain
[[email protected] 28990]#

  

  通过上面的信息我们也可以找出这是一个java进程,在/opt/sonatype/nexus/bin/nexus目录下,当然可以有别的更简单直接的方法.

  查看进程目录: ll /proc/28990

也可以得到PID之后,直接进入/proc/28990

  这样就可以很直观的看出来。

原文地址:https://www.cnblogs.com/lonelyxmas/p/12114556.html

时间: 2024-10-08 02:09:43

Linux中怎么通过PID号找到对应的进程名及所在目录的相关文章

Linux中后面带有波浪号的文件

今天在写代码的时候无意间发现,在使用vim编辑过某个文件之后,在该路径下会出现一个同名的.但是最后带一个波浪号的文件. 身为强迫症的我看到这种文件的存在很是不舒服,可又不敢乱删文件,于是乎我查了一下这讨厌的波浪号文件究竟是干什么的:原来,这些结尾带波浪号的文件是文本编辑器在编辑文件时的备份文件! 既然如此,那我就可以无所顾忌的删掉他们啦. 可以使用rm命令来删除所有结尾带波浪号的文件: rm -fr *.*~ 至于f和r选项是什么意思,我们看下面的解释: -f, --force    忽略不存在

[原创]关于设置linux中vim 显示行号

1.更改所有账户配置 直接更改/etc/vimrc vim /etc/vimrc 在vimrc文件的最后添加 set nu 即可 wq退出. 这样,不论使用哪个账号登陆,vim打开后都显示行号 2.为当前用户配置环境 找到当前用户的vimrc文件.若无此文件,建立此文件即可. vim ~/.vimrc 打开文件后,在最后添加 set nu wq退出. 再次用vim打开即可显示行号 以上方式设置后,在下一次启动vim编辑器的时候,就会自动的显示行号 3.每次手动的设置行号(不建议) 进入vim 输

Linux中proc浅析

1.什么是proc 观察LINUX F8的/etc/rc.d/sysinit文件可以发现,在该脚本的21行出现如下语句: if [ ! -e/proc/mounts ]; then mount -n -t proc /proc /proc mount -n -t sysfs /sys /sys >/dev/null 2>&1 fi 这断话的意思是,如果/proc/mounts文件存在,便挂载proc类型的文件系统的proc设备到proc目录下,挂载sysfs类型的文件系统的sys设备到

如何用DOS命令查看占用某端口的程序及PID号

果学过JSP编程的朋友可以会发现,若用Eclipse运行JSP文件时常常会弹出某某端口正在使用,从而导致代码无法运行.如何查找出特定端口的使用情况以及对应的程序呢,针对该问题,本文介绍利用DOS命令查看占用特定端口的程序: 工具/原料 电脑一台(本文以win7系统的电脑为例,其它系统一样!): 方法/步骤 1 按快捷键“win+R”,输入cmd后按回车进入DOS环境: 2 查看特定端口的使用情况:以80端口为例,输入命令“ netstat  -aon|findstr  "80" ”后按

开发电子商城2(linux中配置jdk)

1.下载jdk版本     http://pan.baidu.com/s/1eR16I6e 2:删除centos中自带的jdk    //2.1 先查看linux中是否装过 并且找到安装的路径 rpm -qa |grep jdk       更多rpm 命令:请参照:http://man.linuxde.net/rpm    //2.2 若是装有jdk 卸载       yum remove ****    //2.3  java -version 看是否删除陈功  3 在usr 目录下创建ja

Linux 中PXE远程安装服务器部署

Linux 中PXE远程安装服务器部署将光盘挂在mnt 目录下1 yum –y install vsftpd dhcp tftp-server syslinux2 centos7安装源准备mkdir /var/ftp/centos7cp –rf /mnt/ /var/ftp/centos7systemctl start vsftpd3启用tftp服务vim /etc/xinetd.d/tftp将disable=yes 改为disable=nosystemctl start tftpsystemc

Linux内核中namespace之PID namespace

前面看了LInux PCI设备初始化,看得有点晕,就转手整理下之前写的笔记,同时休息一下!!~(@^_^@)~ 这片文章是之前写的,其中参考了某些大牛们的博客!! PID框架的设计 一个框架的设计会考虑很多因素,相信分析过Linux内核的读者来说会发现,内核的大量数据结构被哈希表和链表链接起来,最最主要的目的就是在于查找.可想而知一个好的框架,应该要考虑到检索速度,还有考虑功能的划分.那么在PID框架中,需要考虑以下几个因素. 如何通过task_struct快速找到对应的pid 如何通过pid快

从Cts测试testCheckForDuplicateOutput到linux kernel中Thread消耗PID

最近折腾CTS android.security.cts testCheckForDuplicateOutput项,单项测试很容易过,但是联测就挂了. 源码:http://xdecay.com/docs/android-sdk/cts/tests/tests/security/d0/db5/_cloned_secure_random_test_8java_source.php 测试的原理是:不停的创建和关闭进程,测试Pass的前提是出现两个Pid相同的进程.. 循环过程如下: a). 创建进程A

每天进步一点点——重新认识Linux中的进程号

转载请说明出处:http://blog.csdn.net/cywosp/article/details/38968011 1. 概述 众所周知,进程(process)是一个可执行程序的实例,但是在Linux中进程可以重新改写为,进程是由内核定义的抽象的实体,并为该实体分配用以执行程序的各项系统资源.从内核的角度看,进程由用户内存空间(user-space memory)和一系列内核数据结构组成,其中用户内存空间包含了程序代码及代码所使用的变量,而内核数据结构则用于维护进程状态信息.记录在内核数据