performance - programa - terminar proceso cmd
¿Alguna forma de escribir un archivo.bat de Windows para matar procesos? (9)
Aquí escribí un comando de ejemplo que puede pegar en el indicador de línea de comandos de cmd
y está escrito para chrome.exe
.
FOR /F "tokens=2 delims= " %P IN (''tasklist /FO Table /M "chrome*" /NH'') DO (TASKKILL /PID %P)
El simplemente toma todos los PID
listados en el siguiente comando de tasklist
y ejecuta TASKKILL /PID
en cada PID
tasklist /FO Table /M "chrome*" /NH
Si utiliza el para en un archivo de proceso por lotes solo use %% P en lugar de% P
Así que cada vez que enciendo la máquina de desarrollo de mi empresa, tengo que eliminar más de 10 procesos usando el administrador de tareas o cualquier otra aplicación de administración de procesos solo para obtener un rendimiento decente de mi IDE. Sí, estos son procesos de programas que mi empresa instala en mi máquina para la seguridad y el cumplimiento. Lo que me gustaría hacer es tener un archivo .bat o script de algún tipo que pueda disparar y matar a los procesos en cuestión.
¿Alguien sabe cómo hacer esto?
Asumiendo como desarrollador, usted tiene cierto grado de control administrativo sobre su máquina. Si es así, desde la línea de comandos, ejecute msconfig.exe. Puede eliminar muchos procesos incluso desde el inicio, eliminando así la necesidad de eliminarlos con las soluciones mencionadas anteriormente.
Como TASKKILL podría no estar disponible en algunas ediciones Inicio / básicas de Windows, aquí algunas alternativas:
TSKILL processName
o
TSKILL PID
Tenga en cuenta que processName
no debe tener el sufijo .exe
y está limitado a 18 caracteres.
Otra opción es WMIC
:
wmic Path win32_process Where "Caption Like ''MyProcess.exe''" Call Terminate
wmic ofrece incluso más flexibilidad que taskkill. Con wmic Path win32_process get
, puede ver los archivos disponibles que puede filtrar.
Descarga PsKill . Escriba un archivo de proceso por lotes que lo llame para cada proceso que desee sin procesar, pasando el nombre del proceso para cada uno.
Encuentre la lógica a continuación donde funciona con la condición.
Si simplemente llamamos a taskkill /im applicationname.exe
, se eliminará solo si este proceso se está ejecutando. Si este proceso no se está ejecutando, arrojará un error.
Para verificar antes de takskill
, se puede realizar una comprobación para asegurarse de que execute taskkill
se ejecute solo si el proceso se está ejecutando, de modo que no genere errores.
tasklist /fi "imagename eq applicationname.exe" |find ":" > nul
if errorlevel 1 taskkill /f /im "applicationname.exe"
Obtenga Autoruns de Mark Russinovich, el chico de Sysinternals que descubrió el Sony Rootkit ... El mejor software que he usado para limpiar cosas que se inician automáticamente.
Puedes hacer esto con ''taskkill''. Con el parámetro / IM, puede especificar nombres de imagen. Ejemplo:
taskkill / im somecorporateprocess.exe
También puedes hacer esto para ''forzar'' matar:
taskkill / f / im somecorporateprocess.exe
Simplemente agregue 1 línea por proceso que desee eliminar, guárdelo como un archivo .bat y colóquelo en su directorio de inicio. ¡Problema resuelto!
Si se trata de un sistema heredado, PsKill hará lo mismo.
Use Powershell! Cmdlets integrados para gestionar procesos. Ejemplos aquí (difícil), here (integrado) y here (más).
taskkill /f /im "devenv.exe"
esto matará a la fuerza el pid con el nombre exe "devenv.exe"
equivalente a -9 en el comando nix''y kill