Wrapper for the Windows `tasklist` command. Returns a list of apps and services with their Process ID (PID) for all tasks running on either a local or a remote computer.
npm install tasklist> Wrapper for the Windows tasklist command. Returns a list of apps and services with their Process ID (PID) for all tasks running on either a local or a remote computer.
Cleans up and normalizes the data.
``sh`
npm install tasklist
`js
import {tasklist} from 'tasklist';
console.log(await tasklist());
/*
[
{
imageName: 'taskhostex.exe',
pid: 1820,
sessionName: 'Console',
sessionNumber: 1,
memUsage: 4415488
},
...
]
*/
`
See the tasklist docs for more.
Returns a Promise
Examples for options below will use this interface, but you can check tasklistStream below for usage of the stream interface.
Returns a stream.Readable that returns the resulting lines, normalized, one by one.
Options are the same as the Promise interface.
`js
import {tasklistStream} from 'tasklist';
tasklistStream({verbose: true}).pipe(process.stdout);
/*
{
imageName: 'taskhostex.exe',
pid: 1820,
sessionName: 'Console',
sessionNumber: 1,
memUsage: 4415488,
status: 'Running',
username: 'SINDRESORHU3930\\sindre',
cpuTime: 0,
windowTitle: 'Task Host Window'
}
...
*/
`
#### options
Type: object
Warning
- The system, username, password options must be specified together.modules
- The and services options can't be specified if verbose is set to true.modules
- The and services options can't be specified at the same time.apps
- The option can't be specified with modules or services.system
- When , username, password options are specified, the filter option can't have windowtitle and status as the parameter.
##### verbose
Type: boolean\false
Default:
Return verbose results.
Without the verbose and apps option, tasklist returns tasks with the following properties:
- imageName (Type: string)pid
- (Type: number)sessionName
- (Type: string)sessionNumber
- (Type: number)memUsage
- in bytes (Type: number)
With the verbose option set to true but the apps option still set to false, it additionally returns the following properties:
- status (Type: string): One of Running, Suspended, Not Responding, or Unknownusername
- (Type: string)cpuTime
- in seconds (Type: number)windowTitle
- (Type: string)
Note: It's not guaranteed that the username and windowTitle properties are returned with proper values. If they are not available, 'N/A' may be returned on English systems. In contrast, 'Nicht zutreffend' may be returned on German systems, for example.
Verbose example:
`js
import {tasklist} from 'tasklist';
console.log(await tasklist({verbose: true}));
/*
[
{
imageName: 'taskhostex.exe',
pid: 1820,
sessionName: 'Console',
sessionNumber: 1,
memUsage: 4415488,
status: 'Running',
username: 'SINDRESORHU3930\\sindre',
cpuTime: 0,
windowTitle: 'Task Host Window'
},
...
]
*/
`
Warning: Using the verbose option may have a considerable performance impact (See: #6).
##### system
Type: string
Name or IP address of a remote computer (don't use backslashes). The default is the local computer.
##### username
Type: string\'SINDRESORHU3930\\sindre'
Example:
User specified by User or Domain\User. The default is the permissions of the current logged on user on the computer issuing the command.
##### password
Type: string
Password of the user account for the specified username.
##### filter
Type: string[]
Specify the types of processes to include or exclude. More info.
##### apps
Type: boolean
Displays store apps.
Without the verbose option, the command returns the following data:
- imageName (Type: string)pid
- (Type: number)memUsage
- in bytes (Type: number)packageName
- (Type: string)
`js
import {tasklist} from 'tasklist';
console.log(await tasklist({apps: true}));
/*
[
{
imageName: 'SearchUI.exe (CortanaUI)',
pid: 1820,
memUsage: 4415488,
packageName: 'Microsoft.Windows.Cortana'
},
...
]
*/
`
With the verbose option set to true, the command additionally returns the following data:
- sessionName (Type: string)sessionNumber
- (Type: number)status
- (Type: string): One of Running, Suspended, Not Responding, or Unknownusername
- (Type: string)cpuTime
- in seconds (Type: number)windowTitle
- (Type: string)
Note: It's not guaranteed that the username and windowTitle properties are returned with proper values. If they are not available, 'N/A' may be returned on English systems. In contrast, 'Nicht zutreffend' may be returned on German systems, for example.
Verbose example:
`js
import {tasklist} from 'tasklist';
console.log(await tasklist({apps: true, verbose: true}));
/*
[
{
imageName: 'SearchUI.exe (CortanaUI)',
pid: 1820,
sessionName: 'Console',
sessionNumber: 1,
memUsage: 4415488,
status: 'Running',
username: 'SINDRESORHU3930\\sindre',
cpuTime: 0,
windowTitle: 'N/A',
packageName: 'Microsoft.Windows.Cortana'
},
...
]
*/
`
##### modules
Type: string
List all tasks using the given DLL module name. If an empty string is given, it will list all tasks with the used DLL modules.
Note: You can't use the verbose option with this option set.
`js
import {tasklist} from 'tasklist';
console.log(await tasklist({modules: 'wmiutils.dll'}));
/*
[{
imageName: 'chrome.exe',
pid: 1820,
modules: ['wmiutils.dll']
}, ...]
*/
`
##### services
Type: boolean
Displays services hosted in each process.
Note: You can't use the verbose option with this option set.
`js
import {tasklist} from 'tasklist';
console.log(await tasklist({services: true}));
/*
[{
imageName: 'lsass.exe',
pid: 856,
services: ['KeyIso', 'SamSs', 'VaultSvc']
}, ...]
*/
`
- taskkill - Wrapper for the Windows taskkill` command