资讯专栏INFORMATION COLUMN

如何查看进程工作路径

BothEyes1993 / 2703人阅读

摘要:如何查看进程的工作路径有已下几种方法方便查看。使用如下命令,可以看到,该进程的工作目录和方法一得到的路径是一致的。总结使用和可以很方便的查看进程的工作路径。

什么是进程的工作目录

进程在哪个路径下被运行起来哪个路径就是进程的工作目录(Current Woring Directory, CWD)。

这个概念就是这么简单。

比如,你在/home/mac下启动一个进程,那么该进程的工作目录就是/home/mac;如果你在/home/mac/bin下启动同一个程序,那么该进程的工作目录就变为/home/mac/bin。

为什么要理解进程的工作路径

理解了进程的工作目录就能知道为什么用代码进行文件操作的时候通常不写文件的绝对路径而只写文件名就可以了。
比如进程的工作目录是/home/mac,那么当创建一个叫做a.txt的文件时其实创建的是/home/mac/a.txt这个文件。
也就是说其实我们可以简单的提供给进程一个相对路径,这个相对路径相对于谁呢,答案就是进程的工作路径。

解决bug
遇到过这样一个问题,在用其它库读取一个配置文件时总是加载失败,该文件通过相对路径读取的,由于库也没有打印出错误日志所以很难直接排查原因。仔细分析才发现原来该进程不是在配置文件所在的路径下被启动的,导致进程找不到配置文件所以加载出错。

如何查看进程的工作路径

有已下几种方法方便查看。

方法一

使用pwdx命令,这是最简单的方法,提供进程号,该命令就可以返回进程的工作目录。比如有一个进程号是17681的进程,使用命令,

$ pwdx 17681
/home/mac/bin

可以看到该进程的工作目录是/home/mac/bin。

方法二

使用/proc/{pid}这个重量级工具,其原理在码农的荒岛求生《如何查看进程开启了多少线程》这篇文章中已经解释过了,在/proc/{pid}目录下有一个叫做cwd的软连接,通过查看这个原链接就可以知道进程的工作路径了。使用如下命令,

$  ll /proc/17681/cwd
lrwxrwxrwx 1 mac mac 0 Oct 10 04:30 /proc/17681/cwd -> /home/mac/bin

可以看到,该进程的工作目录和方法一得到的路径是一致的。

总结

使用pwdx和proc/{pid}可以很方便的查看进程的工作路径。

One more thing...

如果你喜欢该文章,欢迎关注我的微信公共账号,码农的荒岛求生,获取更多计算机内功的知识。

计算机内功决定程序员职业生涯高度

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/33695.html

相关文章

  • Linux——最全面试题整理(仅此一篇)

    摘要:传输单位称为报文段,传输单位称为用户数据报。孤儿进程将被进程进程号为所收养,并由进程对它们完成状态收集工作。在实际应用中,可以依据自己的实际需求选择不同的方案等量模式,性能最佳,不安全。三个数值分别为分钟分钟分钟,确定平均负载趋势。 ...

    Achilles 评论0 收藏0
  • Linux系统管理

    摘要:一进程管理有计划的重启服务器,是维护服务器的基本原则。而平滑重启是重启服务配置,保留正在使用的用户。其次,它要运行一段时间。 一、进程管理 showImg(https://segmentfault.com/img/bVWZjQ?w=690&h=134); showImg(https://segmentfault.com/img/bVWZkO?w=592&h=191); showImg(...

    MiracleWong 评论0 收藏0
  • Python os模块参考手册

    摘要:像但创建的所有文件夹需要包含子文件夹。如果子文件夹不能被成功删除,将抛出。是一个字符串的路径在中子文件夹的列表不包括。如果参数为或者指定一个的将比它的任何子文件夹的先产生自上而下。 Python的标准库中的os模块包含普遍的操作系统功能。这个模块的作用主要是提供与平台无关的功能。也就是说os模块能够处理平台间的差异问题,使得编写好的程序无需做任何改动就能在另外的平台上运行。当然,这个模...

    sherlock221 评论0 收藏0
  • Linux进程概念(精讲)

    摘要:进程信息被放在一个叫做进程控制块的数据结构中,可以理解为进程属性的集合,课本上称之为。实际上是对进程控制块的统称,在中描述进程的结构体叫做。如果子进程创建失败,则在父进程中返回。 ...

    nanfeiyan 评论0 收藏0
  • 如何设置node全局脚本

    摘要:全局脚本设置的本质思路其实原理很简单将的全局命令搜索路径,加上脚本所在文件夹的路径。权限设置了以后,脚本的图标将变成下面这个样子。重启或新建终端,执行脚本。 前语 随着node的流行,JS已经可以解决大部分问题。这对前端工程师十分友好。相信很多同学在开发业务之余,都会写一些小脚本代替手工完成繁琐,重复的工作,从而提高工作效率。但部分同学开发的脚本,仅局限于脚本所在路径,通过node x...

    cgspine 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<