`
happyqing
  • 浏览: 3198662 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

linux下查看进程的完整路径

阅读更多

linux 下查看进程的完整路径

当我们查看系统正在运行的进程时,有时候我们想查看以下进程的详细信息,包括绝对路径,这个时候ps的不足指出就显露出来了,而强大的top也只能查看到进程名而已。

    这个时候怎么办呢?个人理解,在linux启动一个进程时,会给进程分配一个ID,就是我们的PID,而与此同时了,系统会在/proc下创建一个文件夹,以PID命名,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件,这就我们想要的,就像win下的exe文件,它是原始程序的一个链接,所以当我们用ls  -l的时候就能够得到我们的完整路径!

    $ top

    top - 11:37:41 up 51 min,  4 users,  load average: 0.62, 0.80, 0.77

    Tasks: 167 total,   1 running, 166 sleeping,   0 stopped,   0 zombie

    Cpu(s):  8.6%us,  2.3%sy,  0.0%ni, 87.0%id,  2.1%wa,  0.0%hi,  0.0%si,  0.0%st

    Mem:   2026800k total,  1948128k used,    78672k free,   565720k buffers

    Swap:   261112k total,        0k used,   261112k free,   922732k cached

    PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

    1709 ubuntu    20   0  408m 145m  32m S   10  7.4   5:43.69 firefox-bin

    1049 root      20   0 94368  34m  13m S    5  1.7   2:04.41 Xorg

    1747 ubuntu    20   0  228m  68m  19m S    5  3.5   2:35.79 plugin-containe

    1536 ubuntu    20   0 85264  28m 9184 S    2  1.4   0:21.85 compiz

    1640 ubuntu    20   0 59260  18m  13m S    1  1.0   0:09.05 gnome-terminal

    9 root      20   0     0    0    0 S    0  0.0   0:00.03 events/0

    1051 mysql     20   0  142m  18m 5856 S    0  0.9   0:00.90 mysqld

    3101 ubuntu    20   0  2548 1224  924 R    0  0.1   0:00.03 top

    1 root      20   0  2780 1704 1228 S    0  0.1   0:00.37 init

    2 root      20   0     0    0    0 S    0  0.0   0:00.00 kthreadd

    3 root      RT   0     0    0    0 S    0  0.0   0:00.00 migration/0

    $ cd /proc/1709/

    /proc/1709$ ls

    attr             cpuset   io        mountinfo   pagemap      smaps    task

    auxv             cwd      latency   mounts      personality  stack    wchan

    cgroup           environ  limits    mountstats  root         stat

    clear_refs       exe      loginuid  net         sched        statm

    cmdline          fd       maps      oom_adj     schedstat    status

    coredump_filter  fdinfo   mem       oom_score   sessionid    syscall

    /proc/1709$ ls -l exe

    lrwxrwxrwx 1 ubuntu ubuntu 0 2011-08-13 11:13 exe -> /usr/lib/firefox-3.6.18/firefox-bin

-----------------------------------------------------

cwd符号链接的就是进程22401的运行目录;

exe符号连接就是执行程序的绝对路径;

cmdline就是程序运行时输入的命令行命令;本例为:。/cbs

cpu记录了进程可能运行在其上的cpu;显示虚拟的cpu信息

environ记录了进程运行时的环境变量

fd目录下是进程打开或使用的文件的符号连接

。。.

通过cwd直接进入进程运行目录,通过查看相关信息就可以定位此目录对应那个端口号,以及定位是那个应用才使用此服务程序。这样就获得了Linux进程文件路径了。

 

分享到:
评论

相关推荐

    通过PID获取进程路径

    因此,能够正确地获取这两种模式下的进程路径是至关重要的。 为了实现这个功能,我们可以利用Windows API提供的函数。例如,`OpenProcess`函数可以获取指定PID的进程句柄,然后使用`QueryFullProcessImageName`或`...

    Linux下init进程源码分析

    标题:Linux下init进程源码分析 描述:深入解析Linux init进程的核心机制及其实现细节。 **重要知识点解析:** 1. **init进程的角色与重要性:** - 在Linux系统中,`init`进程(PID=1)是所有其他进程的父进程,...

    LINUX下多路径(multi-path)介绍及使用

    ### LINUX下多路径(multi-path)介绍及使用 #### 一、什么是多路径? 传统的计算机系统通常采用一对一的硬盘连接方式,即一个硬盘通过单一的总线与主机相连。但在现代数据中心环境中,如通过光纤组成的存储区域网络...

    Linux进程-zhangwl.rar_linux_linux 进程_linux进程_源码分析_进程 linux

    Linux进程是操作系统的核心概念,理解和掌握其工作原理对于深入学习Linux系统至关重要。本资料集合将探讨Linux进程的生成、使用和创建过程,以及相关的源码分析。 首先,我们来了解一下进程的生成。在Linux中,新...

    linux根据进程号PID查找启动程序的全路径

    总结来说,通过`netstat`、`ps`和`/proc`目录,我们可以有效地定位并分析Linux系统中的异常进程,找出它们的完整启动路径。这对于故障排查、系统优化以及安全维护至关重要。在实际工作中,了解这些基础操作将极大地...

    Linux下login进程源码分析

    3. **错误处理**:如果`execl()`调用失败,`login`将输出错误信息,通常是因为无法执行`_PATH_LOGIN`(即`/bin/login`)路径下的程序。 #### 环境与联系 `login`程序紧密地与系统其他组件互动,如`mingetty`。`...

    Linux下用户和进程的管理

    在Linux中,可以通过`ps`命令查看当前系统中的进程状态,`kill`或`pkill`命令用于结束特定的进程,`top`或`htop`提供实时的进程监控。了解如何管理和控制进程对于系统性能优化和问题排查至关重要。 通过这个实验,...

    ka.rar_Linux 进程调度_kalinux_linux 进程_linux进程管理_进程同步

    在“ka.rar”这个压缩包中,包含了关于Linux进程调度、进程管理以及进程同步的相关实验和资料,这些都是理解和操作Linux系统至关重要的知识点。 首先,我们来看“进程调度”。在Linux中,进程调度器负责决定哪个...

    linux下监控进程程序

    1,应用范围:在linux系统下的监控程序,根据进程名称监控一些进程或程序,如果某个程序停止运行,则发送一个提醒邮件或者飞信通知。 通过crontab机制,在设定的时间间隔内反复执行监控程序,达到每隔一个时间间隔...

    linux进程监控和进程守护程序

    综上所述,Linux进程监控和进程守护程序是系统运维中不可或缺的一部分,对于保证系统稳定运行和关键业务连续性具有重要的作用。通过合理设计和运用监控与守护机制,不仅可以提高运维效率,还能够最大限度地减少因...

    Linux下的基本命令和模拟进程调度

    本课程设计主要聚焦于Linux下的基本命令操作和进程调度,这两个主题对于理解Linux系统管理和优化至关重要。 首先,我们来深入探讨Linux的基本命令。这些命令是与Linux交互的基础工具,通过它们,用户可以执行各种...

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

    本文将详细介绍如何在Linux环境下通过几个命令行工具来查看进程的堆栈信息,以帮助开发者了解程序运行时的线程状态和调用路径。 首先,我们要知道进程和线程的概念。进程是程序的一次执行实例,而线程是进程中执行...

    进程控制(Linux)操作系统实验

    构建完整的程序路径(这里假定所有程序都位于 `/home/nicholas/` 目录下)。 2. 调用 `gettimeofday()` 获取当前时间作为子进程的开始时间。 3. 使用 `fork()` 创建一个子进程。 4. 在子进程中调用 `execv()` 来...

    Linux虚拟文件系统(路径搜索)

    ### Linux虚拟文件系统(路径搜索) #### 概述 Linux虚拟文件系统(VFS,Virtual File System)是一种抽象层,用于处理不同的文件系统接口。它提供了统一的接口来访问各种类型的文件系统,使得用户可以使用相同的...

    完整版取非系统进程全路径文件名.rar

    在Windows系统中,可以使用任务管理器查看进程信息,但仅显示进程名称,不包括完整路径。对于开发者和管理员来说,可能需要更详细的信息,如进程的可执行文件的完整路径,以便了解进程的来源和行为。 在编程层面,...

    Linux中将Tomcat添加到守护进程

    在Linux环境中,为了确保应用程序如Tomcat能够随系统自动启动并作为守护进程运行,需要进行一系列的配置步骤。本文将详细介绍如何将Tomcat添加到Linux的守护进程,并处理"Invalid user name 'tomcat' specified"的...

    Linux进程并发程序设计

    Linux 进程并发程序设计是指在 Linux 环境下编写并发程序的设计和实现,涵盖进程创建、进程通信、管道应用等方面。同时,掌握 Linux 环境下的进程并发程序设计也能够帮助开发者更好地理解 Linux 操作系统的工作机制...

Global site tag (gtag.js) - Google Analytics