๐ธ Cross platform children list of a PID.
Coded with โค๏ธ by Simone Primarosa.
This package is really similar to ps-tree but is faster, safer and
provides sub-children results.
Furthermore ps-tree is unmaintained.
Uuh, and a fancy CLI is also available!
npm install pidtreeRequirements: pidtree is an ESM-only package and requires Node.js >= 18. If you need CommonJS (
require) or support for older Node.js versions, stay onpidtree@0.6.
import pidtree from 'pidtree'
// The named import works too: import {pidtree} from 'pidtree'
// Get children of the current process (a promise is returned)
const pids = await pidtree(process.pid)
console.log(pids)
// => []
// Include the given pid in the result array
console.log(await pidtree(process.pid, {root: true}))
// => [727]
// Get all the processes of the System (-1 is a special value of this package)
console.log(await pidtree(-1))
// => [530, 42, ..., 41241]
// Include the PPID in the results
console.log(await pidtree(1, {advanced: true}))
// => [{ppid: 1, pid: 530}, {ppid: 1, pid: 42}, ..., {ppid: 1, pid: 41241}]
// A Node-style callback is also supported instead of a promise
pidtree(1, function (err, pids) {
console.log(pids)
// => [141, 42, ..., 15242]
})| Linux | FreeBSD | NetBSD | SunOS | macOS | Win | AIX |
|---|---|---|---|---|---|---|
| โ | โ | โ | โ | โ | โ | โ |
โ = Working โ = Not tested but should work
Please if your platform is not supported file an issue.
Show a tree of the processes inside your system inside your terminal.npx pidtree $PPIDJust replace $PPID with one of the pids inside your system.
Or don't pass anything if you want all the pids inside your system.
npx pidtreeTo display the output as a list, similar to the one produced from pgrep -P $PID,
pass the --list flag.
npx pidtree --listGet the list of children pids of the given pid.
Kind: global function
Returns: Promise.<Array.<Object>> - Only when the callback is not provided.
Access: public
| Param | Type | Default | Description |
|---|---|---|---|
| pid | Number | String |
A pid. If -1 will return all the pids. | |
| [options] | Object |
Optional options object. | |
| [options.root] | Boolean |
false |
Include the provided pid in the list. Ignored if -1 is passed as pid. |
| [callback] | function |
Called when the list is ready. If not provided a promise is returned instead. |
- pidusage - Cross-platform process cpu % and memory usage of a PID
- Simone Primarosa - simonepri
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the license file for details.
