Get running processes
Works on macOS, Linux, and Windows. Windows ARM64 is not supported yet.
npm install ps-list
import psList from 'ps-list';
console.log(await psList());
//=> [{pid: 3213, name: 'node', cmd: 'node test.js', ppid: 1, uid: 501, cpu: 0.1, memory: 1.5, path: '/usr/local/bin/node', startTime: 2025-01-15T10:30:00.000Z}, …]
Returns a Promise<ProcessDescriptor[]>
with the running processes.
On macOS and Linux:
name
property is truncated to 15 characters by the systemcmd
property contains the full command line with argumentscpu
property is the CPU usage percentage (0-100)memory
property is the memory usage percentage (0-100)path
property is a best-effort attempt to get the full executable path:
/proc/{pid}/exe
when availablecomm
(which may be truncated)startTime
property contains the process start time as a Date objectThe cmd
, cpu
, memory
, uid
, path
, and startTime
properties are not available on Windows.
Type: object
Type: boolean
Default: true
Include other users' processes as well as your own.
On Windows this has no effect and will always be the user's own processes.