@667/ps-list 中文文档教程
ps-list
获取正在运行的进程
适用于 macOS、Linux 和 Windows。
sindresorhus/ps-list 之间的主要区别是使用 WMIC 而不是 fastlist.exe。 此外,此 fork 将过滤掉运行 ps-list 此 PR 的进程的 PID。
WMIC 是 Windows 的本机命令行实用程序,它提供了比其他方式更多的信息。
Install
$ npm install @667/ps-list
Usage
const psList = require('@667/ps-list');
(async () => {
console.log(await psList());
//=> [{pid: 3213, name: 'node', cmd: 'node test.js', ppid: 1, uid: 501, cpu: 0.1, memory: 1.5}, …]
})();
或者在 Windows 上:
/*
=> [{caption: "node.exe",
cmd: "node "C:\..\nodemon.js" test.js",
commandline: "node "C:\..\nodemon.js" --inspect test.js",
cpu: 0,
creationclassname: "Win32_Process",
creationdate: "20200421203634.377920-420",
cscreationclassname: "Win32_ComputerSystem",
csname: "DESKTOP-ARG34AZ",
description: "node.exe",
executablepath: "C:\Program Files\nodejs\node.exe",
executionstate: "",
handle: "12604",
handlecount: "173",
installdate: "",
kernelmodetime: "4687500",
maximumworkingsetsize: "1380",
memory: 19742720,
minimumworkingsetsize: "200",
name: "node.exe",
node: "DESKTOP-ARG34AZ",
oscreationclassname: "Win32_OperatingSystem",
osname: "Microsoft Windows 10 Pro|C:\WINDOWS|",
otheroperationcount: "9878",
othertransfercount: "396344",
pagefaults: "14660",
pagefileusage: "16584",
parentprocessid: "10976",
peakpagefileusage: "23184",
peakvirtualsize: "4587802624",
peakworkingsetsize: "31452",
pid: 12604,
ppid: 10976,
priority: "8",
privatepagecount: "16982016",
processid: "12604",
quotanonpagedpoolusage: "19",
quotapagedpoolusage: "170",
quotapeaknonpagedpoolusage: "22",
quotapeakpagedpoolusage: "206",
readoperationcount: "312",
readtransfercount: "557407",
sessionid: "1",
status: "",
terminationdate: "",
threadcount: "14",
usermodetime: "5312500",
virtualsize: "4586491904",
windowsversion: "10.0.19041",
workingsetsize: "28581888",
writeoperationcount: "1",
writetransfercount: "55"}, …]
*/
Windows 尚不支持
uid
属性。
API
psList([options])
返回一个包含正在运行的进程的 Promise
。
options
类型:对象
all
类型:布尔值
默认值:true
返回其他用户的进程以及您自己的进程。
在 Windows 上,这没有任何影响,并且始终是用户自己的进程。
License
麻省理工学院 © June07
ps-list
Get running processes
Works on macOS, Linux, and Windows.
Primary difference between sindresorhus/ps-list is the use of WMIC instead of fastlist.exe. Additionally, this fork will filter out the PID of the process running the ps-list this PR.
WMIC is a native command-line utility for Windows that provides much more information that available otherwise.
Install
$ npm install @667/ps-list
Usage
const psList = require('@667/ps-list');
(async () => {
console.log(await psList());
//=> [{pid: 3213, name: 'node', cmd: 'node test.js', ppid: 1, uid: 501, cpu: 0.1, memory: 1.5}, …]
})();
or on Windows:
/*
=> [{caption: "node.exe",
cmd: "node "C:\..\nodemon.js" test.js",
commandline: "node "C:\..\nodemon.js" --inspect test.js",
cpu: 0,
creationclassname: "Win32_Process",
creationdate: "20200421203634.377920-420",
cscreationclassname: "Win32_ComputerSystem",
csname: "DESKTOP-ARG34AZ",
description: "node.exe",
executablepath: "C:\Program Files\nodejs\node.exe",
executionstate: "",
handle: "12604",
handlecount: "173",
installdate: "",
kernelmodetime: "4687500",
maximumworkingsetsize: "1380",
memory: 19742720,
minimumworkingsetsize: "200",
name: "node.exe",
node: "DESKTOP-ARG34AZ",
oscreationclassname: "Win32_OperatingSystem",
osname: "Microsoft Windows 10 Pro|C:\WINDOWS|",
otheroperationcount: "9878",
othertransfercount: "396344",
pagefaults: "14660",
pagefileusage: "16584",
parentprocessid: "10976",
peakpagefileusage: "23184",
peakvirtualsize: "4587802624",
peakworkingsetsize: "31452",
pid: 12604,
ppid: 10976,
priority: "8",
privatepagecount: "16982016",
processid: "12604",
quotanonpagedpoolusage: "19",
quotapagedpoolusage: "170",
quotapeaknonpagedpoolusage: "22",
quotapeakpagedpoolusage: "206",
readoperationcount: "312",
readtransfercount: "557407",
sessionid: "1",
status: "",
terminationdate: "",
threadcount: "14",
usermodetime: "5312500",
virtualsize: "4586491904",
windowsversion: "10.0.19041",
workingsetsize: "28581888",
writeoperationcount: "1",
writetransfercount: "55"}, …]
*/
The
uid
property is not yet supported on Windows.
API
psList([options])
Returns a Promise<Array>
with the running processes.
options
Type: Object
all
Type: boolean
Default: true
Return other users' processes as well as your own.
On Windows this has no effect and will always be the users' own processes.
License
MIT © June07