Administrar procesos desde la línea de comandos de Windows 8.1
Muchos usuarios se resisten a utilizar la línea de comandos de Windows. Sin embargo, en muchas ocasiones se trata de un medio muy eficaz de obtener la información que vamos buscando sin someternos a los rodeos típicos de la interfaz gráfica. El artículo de hoy es un claro ejemplo de esto: Comprobaremos lo sencillo que resulta obtener la lista de procesos y servicios que se están ejecutando en un ordenador con Windows 8.1 y, además, aprenderemos a detenerlos de una forma muy sencilla.
Para conseguirlo, aprenderemos el uso básico de dos comandos del modo texto: tasklist y taskkill.
Lo primero será hacer clic, con el botón derecho del ratón sobre el botón Inicio.
Así conseguimos que aparezca el cuadro de diálogo Ejecutar. En él, hacemos clic sobre el cuadro de texto Abrir y escribimos la siguiente orden:
cmd
De esta forma tan sencilla, habremos conseguido que aparezca la ventana de la línea de comandos, lista para que comencemos a escribir ordenes.
Uso del comando tasklist
Utilizando tasklist con la sintaxis más sencilla, además del nombre de cada programa que se esté ejecutando, podemos obtener su PID (identificador de proceso, en inglés Process ID), la sesión en la que se ha iniciado (Services para el sistema y Console para los usuarios), el número de sesiones en las que está iniciado y la cantidad de memoria que tiene asignada:
tasklist
Si necesitamos información más detallada de cada proceso, podemos utilizar el argumento /V:
tasklist /v
2
Como la salida muestra muchos datos, hemos ampliado el tamaño de la ventana, para que se aprecie mejor.
En este caso, obtendremos también el estado, el nombre de usuario que lo ha iniciado, el tiempo de proceso y el título de la ventana donde se muestra, en caso de que exista.
A modo de ejemplo, una línea podría contener esta información:
-
Nombre de imagen: soffice.bin
-
PID: 2348
-
Nombre de sesión: Console
-
Núm. de ses: 1
-
Uso de memor: 93.864 KB
-
Estado: Running
-
Nombre de usuario: SOMEBOOKS\usuario
-
Tiempo de CP: 0:00:22
-
Título de ventana: Consejos.odt – OpenOffice Writer
Para comprobar los servicios que incluye cada uno de los procesos que se están ejecutando, podemos usar el argumento /svc:
tasklist /svc
Por otro lado, si lo que necesitamos es conocer, de entre todos los procesos que se están ejecutando, aquellos que hacen uso de una determinada librería de enlace dinámico (dll) o de un determinado programa ejecutable (exe), bastaría con utilizar el argumento /m. Por ejemplo, para saber qué programas utilizan la librería ntdll.dll, bastaría con escribir un comando como este:
tasklist /m ntdll.dll
Otra posibilidad consiste en filtrar la salida de tasklist según una condición. Esto lo conseguiremos con el argumento /fi. Así, si necesitamos conocer los procesos iniciados por la cuenta de usuario llamada, precisamente, usuario, bastaría con escribir un comando como este:
tasklist /fi "username eq usuario"
5
Hemos abierto el navegador web para que compruebes que se encuentra en el listado ofrecido por el comando.
Por supuesto, no es necesario utilizar los argumentos de uno en uno. Si lo preferimos, podemos combinarlos para obtener su información combinada. Por ejemplo, si queremos consultar la información anterior, pero de una forma más detallada, podemos añadir el argumento /v:
tasklist /v /fi "username eq usuario"
Uso del comando taskkill
Cuando necesitamos forzar la detención de un proceso que está ejecutándose, podemos recurrir al comando taskkill. Por ejemplo, partiendo del ejemplo mostrado en la imagen anterior, podríamos escribir la siguiente orden para detener el navegador:
taskkill /pid 2816
Observa que el PID que utilizamos coincide con el que aparece en el listado anterior.
Aunque, si prefieres utilizar el nombre del proceso en lugar de su PID, basta con emplear la siguiente sintaxis:
taskkill /im firefox.exe
En los dos casos anteriores, el comando trata de que se produzca un cierre ordenado del proceso, es decir, el sistema operativo le pide al proceso que ese cierre. De esta forma, si el proceso necesita guardar alguna información en disco o realizar cualquier otra tarea, le estaremos dando la oportunidad de que lo haga.
Sin embargo, en ocasiones, un proceso está funcionando de forma inadecuada y no atiende al requerimiento del sistema operativo. En estas situaciones, podemos recurrir al argumento /f, que forzará el cierre inmediato del proceso indicado:
taskkill /f /im firefox.exe
Por último, puedes encontrarte en una situación en la que necesites que un proceso que presenta un mal funcionamiento se cierre, pero necesitarás abrirlo de forma inmediata. Estos casos pueden resolverse en una sola orden uniendo el comando taskkill con el comando start:
taskkill /f /im firefox.exe & start firefox.exe
Como siembre, espero que te resulte útil.
One more thing…
Si prefieres utilizar la interfaz gráfica, puedes consultar nuestro artículo Finalizar programas o servicios que no responden en Windows 8.1.
… Y, relacionado con el Administrador de tareas, también tenemos el artículo Comprobar el rendimiento del sistema en Windows 8.1.