Giter Site home page Giter Site logo

sbencoding / tasklist Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sindresorhus/tasklist

0.0 0.0 0.0 42 KB

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.

License: MIT License

JavaScript 94.31% TypeScript 5.69%

tasklist's Introduction

tasklist Build Status

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.

Install

$ npm install tasklist

Usage

const tasklist = require('tasklist');

(async () => {
	console.log(await tasklist());
	/*
	[
		{
			imageName: 'taskhostex.exe',
			pid: 1820,
			sessionName: 'Console',
			sessionNumber: 1,
			memUsage: 4415488
		},

	]
	*/
})();

API

See the tasklist docs for more.

tasklist(options?)

Returns a Promise<object[]> that contains the normalized results of the command output.

Examples for options below will use this interface, but you can check tasklist.stream below for usage of the stream interface.

tasklist.stream(options?)

Returns a stream.Readable that returns the resulting lines, normalized, one-by-one.

Options are the same as the Promise interface.

Example using stream interface

const tasklist = require('tasklist');

tasklist.stream({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. The modules and services options can't be specified if verbose is set to true. The modules and services options can't be specified at the same time. When system, username, password options are specified, the filter option can't have windowtitle and status as the parameter.

verbose

Type: boolean
Default: false

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 Unknown
  • username (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:

const tasklist = require('tasklist');

(async () => {
	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
Example: 'SINDRESORHU3930\\sindre'

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)

Example:

const tasklist = require('tasklist');

(async () => {
	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 Unknown
  • username (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:

const tasklist = require('tasklist');

(async () => {
	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.

Example:

const tasklist = require('tasklist');

(async () => {
	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.

Example:

const tasklist = require('tasklist');

(async () => {
	console.log(await tasklist({services: true}));
	/*
	[{
		imageName: 'lsass.exe',
        pid: 856,
        services: ['KeyIso', 'SamSs', 'VaultSvc']
	}, …]
	*/
})();

Related

  • taskkill - Wrapper for the Windows taskkill command

Maintainers

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.