Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unix 获取已完成进程的最后一个工作目录_Unix_Ocaml - Fatal编程技术网

Unix 获取已完成进程的最后一个工作目录

Unix 获取已完成进程的最后一个工作目录,unix,ocaml,Unix,Ocaml,是否可以获取已完成进程的最后一个工作目录?例如:我们已经分叉了一个进程,等待它完成,获得了一个退出代码和一些输出,现在我们想检查该进程所在的最后一个工作目录 我们的应用程序是用OCaml编写的,下面是大致相同的代码: open Core.Std let pinfo = Unix.create_process ~prog:"/bin/sh" ~args:["-c"; "cd ~/foo/bar"] in let open Unix.Process_info in let _ = Unix.wai

是否可以获取已完成进程的最后一个工作目录?例如:我们已经分叉了一个进程,等待它完成,获得了一个退出代码和一些输出,现在我们想检查该进程所在的最后一个工作目录

我们的应用程序是用OCaml编写的,下面是大致相同的代码:

open Core.Std

let pinfo = Unix.create_process ~prog:"/bin/sh" ~args:["-c"; "cd ~/foo/bar"] in
let open Unix.Process_info in
let _ = Unix.waitpid pinfo.pid in
(* what was the last working directory of pinfo.pid? *)

任何建议,无论是否针对OCaml,都将不胜感激!另外,一个同时在MacOSX和Linux上工作的解决方案更可取。

我认为Linux内核没有提供这些信息。如果应用程序是一个黑匣子,您可能会使用
LD\u预加载
strace
来跟踪
chdir()
调用