peach a19a732be8 commit message 2 年 前
..
bin a19a732be8 commit message 2 年 前
lib a19a732be8 commit message 2 年 前
index.d.ts a19a732be8 commit message 2 年 前
index.js a19a732be8 commit message 2 年 前
license a19a732be8 commit message 2 年 前
package.json a19a732be8 commit message 2 年 前
readme.md a19a732be8 commit message 2 年 前

readme.md

pidtree

<img src="https://img.shields.io/travis/simonepri/pidtree/master.svg?label=MacOS%20%26%20Linux" alt="Mac/Linux Build Status" />

<img src="https://img.shields.io/appveyor/ci/simonepri/pidtree/master.svg?label=Windows" alt="Windows Build status" />

<img src="https://img.shields.io/codecov/c/github/simonepri/pidtree/master.svg" alt="Codecov Coverage report" />

<img src="https://snyk.io/test/github/simonepri/pidtree/badge.svg?targetFile=package.json" alt="Known Vulnerabilities" />

<img src="https://david-dm.org/simonepri/pidtree/status.svg" alt="Dependency Status" />


<img src="https://img.shields.io/badge/code_style-XO+Prettier-5ed9c7.svg" alt="XO Code Style used" />

<img src="https://img.shields.io/badge/test_runner-AVA-fb3170.svg" alt="AVA Test Runner used" />

<img src="https://img.shields.io/badge/test_coverage-NYC-fec606.svg" alt="Istanbul Test Coverage used" />

<img src="https://img.shields.io/badge/initialized_with-ni-e74c3c.svg" alt="NI Scaffolding System used" />

<img src="https://img.shields.io/badge/released_with-np-6c8784.svg" alt="NP Release System used" />


<img src="https://img.shields.io/npm/v/pidtree.svg" alt="Latest version on npm" />

<img src="https://img.shields.io/github/license/simonepri/pidtree.svg" alt="Project license" />

🚸 Cross platform children list of a PID.


Coded with ❤️ by <a href="#authors">Simone Primarosa</a>.

Synopsis

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!

Usage

var pidtree = require('pidtree')

// Get childs of current process
pidtree(process.pid, function (err, pids) {
  console.log(pids)
  // => []
})

// Include the given pid in the result array
pidtree(process.pid, {root: true}, function (err, pids) {
  console.log(pids)
  // => [727]
})

// Get all the processes of the System (-1 is a special value of this package)
pidtree(-1, function (err, pids) {
  console.log(pids)
  // => [530, 42, ..., 41241]
})

// Include PPID in the results
pidtree(1, {advanced: true}, function (err, pids) {
  console.log(pids)
  // => [{ppid: 1, pid: 530}, {ppid: 1, pid: 42}, ..., {ppid: 1, pid: 41241}]
})

// If no callback is given it returns a promise instead
const pids = await pidtree(1)
console.log(pids)
// => [141, 42, ..., 15242]

Compatibility

Linux FreeBSD NetBSD SunOS macOS Win AIX

✅ = Working ❓ = Not tested but should work

Please if your platform is not supported file an issue.

CLI

pidtree cli Show a tree of the processes inside your system inside your terminal.

npx pidtree $PPID

Just 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 pidtree

To display the output as a list, similar to the one produced from pgrep -P $PID, pass the --list flag.

npx pidtree --list

API

pidtree(pid, [options], [callback]) ⇒ [Promise.<Array.<Object>>]

Get 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.

Related

  • pidusage - Cross-platform process cpu % and memory usage of a PID

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the license file for details.