Obtener una lista de procesos en ejecución en PowerShell

Migel Hewage Nimesha 31 mayo 2022
Obtener una lista de procesos en ejecución en PowerShell

Este artículo presenta el cmdlet Get-Process para enumerar los procesos en ejecución en PowerShell.

Use el cmdlet Get-Process para mostrar la lista de procesos en ejecución en PowerShell

Hay más de 200 cmdlets disponibles en el entorno de PowerShell. Cada cmdlet es responsable de realizar una función específica.

El Get-Process es uno de los cmdlets de uso frecuente que ayudan a recuperar la lista de procesos en ejecución en la máquina con Windows.

Este cmdlet brinda información útil relacionada con cada proceso, como la identificación del proceso, el nombre, el uso de la memoria, etc. Además, muestra una instantánea de los procesos en ejecución del sistema.

Sintaxis:

Get-Process [[-ProcessName] string[]] [-NameOfTheComputer string[]]
         [-FileVersionInfo] [-Module] [CommonParameters]

Get-Process -processID Int32[] [-ComputerName string[]]
         [-FileVersionInfo] [-Module] [CommonParameters]

Get-Process -ProcessInputObject Process[] [-ComputerName string[]]
         [-FileVersionInfo] [-Module] [CommonParameters]

Los parámetros son opcionales para el cmdlet Get-Process y puede usar esos parámetros según sus requisitos.

Mostrar todos los procesos en ejecución

Podemos usar directamente el comando Get-Process sin ningún parámetro. Debería mostrar todos los procesos en ejecución en ese momento.

Además, se puede utilizar el alias gps en lugar del comando Get-Process.

Get-Process
gps

Producción:

Mostrar todos los procesos en ejecución

Hay varias informaciones útiles disponibles en la tabla de salida.

  1. Id - El identificador único para un proceso dado.
  2. ProcessName - El nombre del proceso.
  3. CPU(s) - Este es el tiempo de procesador que ha utilizado el proceso (dado en segundos).
  4. PM(K) - El tamaño de la memoria paginable (dado en Kilo-bytes).

Recuperar la información para un solo proceso

Get-Process -Name typora

O

Get-Process typora

Los dos comandos anteriores filtrarán la lista de procesos por el nombre de proceso dado y mostrarán los procesos en ejecución para ese nombre de proceso en particular.

Producción:

Obtener-Proceso-Nombre

Recuperar la Información para Múltiples Procesos

Puede especificar más de un proceso por su nombre como parámetro de nombre. Enumerará todos los procesos con la información relevante.

Get-Process NotePad, Outlook

Producción:

Obtener proceso múltiple

Además, puede utilizar los comodines para el nombre del proceso.

Recuperar objetos de proceso con los atributos dados

Podemos mostrar la información del objeto de proceso para atributos específicos cuando sea necesario. Recuperemos solo el Process ID para el proceso del Bloc de notas.

(Get-Process NotePad).Id

Producción:

Recuperar objetos de proceso con los atributos dados

Además, podemos recuperar el atributo de tiempo de CPU para el proceso Bloc de notas, como se muestra a continuación.

(Get-Process NotePad).CPU

Producción:

obtener la CPU del proceso

Mostrar el propietario del proceso

La salida predeterminada del comando Get-Process no muestra el atributo ProcessOwner. Pero esto puede ser una información valiosa cuando necesite finalizar un proceso determinado.

Podemos usar el parámetro -IncludeUserName para incluir el atributo ProcessOwner en la salida.

Get-Process -Name notepad -IncludeUserName

Producción:

Get-Process includeUserName

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.