Query the parent processes recursively, up to the first process.
(On some platforms, like Windows, the process tree is not a tree
and may contain loops, in which case ps_descent() only goes up
until the first repetition.)
Usage
ps_descent(p = ps_handle())Value
A list of process handles, starting with p, each one
is the parent process of the previous one.
See also
Other process handle functions:
ps_children(),
ps_cmdline(),
ps_connections(),
ps_cpu_times(),
ps_create_time(),
ps_cwd(),
ps_environ(),
ps_exe(),
ps_handle(),
ps_interrupt(),
ps_is_running(),
ps_kill(),
ps_memory_info(),
ps_name(),
ps_num_fds(),
ps_num_threads(),
ps_open_files(),
ps_pid(),
ps_ppid(),
ps_resume(),
ps_send_signal(),
ps_shared_libs(),
ps_status(),
ps_suspend(),
ps_terminal(),
ps_terminate(),
ps_uids(),
ps_username()
Examples
ps_descent()
#> [[1]]
#> <ps::ps_handle> PID=7371, NAME=R, AT=2026-03-31 18:20:27.39
#>
#> [[2]]
#> <ps::ps_handle> PID=2150, NAME=Runner.Worker, AT=2026-03-31 18:19:00.66
#>
#> [[3]]
#> <ps::ps_handle> PID=2135, NAME=Runner.Listener, AT=2026-03-31 18:18:58.42
#>
#> [[4]]
#> <ps::ps_handle> PID=2098, NAME=hosted-compute-, AT=2026-03-31 18:18:57.75
#>
#> [[5]]
#> <ps::ps_handle> PID=1, NAME=systemd, AT=2026-03-31 18:18:23.35
#>