jingleisi 2019-06-28
进程在哪个路径下被运行起来哪个路径就是进程的工作目录(Current Woring Directory, CWD)。
这个概念就是这么简单。
比如,你在/home/mac下启动一个进程,那么该进程的工作目录就是/home/mac;如果你在/home/mac/bin下启动同一个程序,那么该进程的工作目录就变为/home/mac/bin。
有已下几种方法方便查看。
使用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}可以很方便的查看进程的工作路径。
如果你喜欢该文章,欢迎关注我的微信公共账号,码农的荒岛求生,获取更多计算机内功的知识。
计算机内功决定程序员职业生涯高度