Autor
|
Tema: mejorar code taskkill exe molestos (batch) (Leído 8,294 veces)
|
flony
Desconectado
Mensajes: 585
|
hola gente amiga  este code lo que hace es borrar los exe que no deseo que funcionen,  me ayudan a mejorar este code tiene unos pequeños errores como por ejmplo no puedo borrar los primeros renglones y creo q borro un par de funciones esenciales  bue y si tienen algo mas para mejorar lo ponen...che quiero criticas constructivas  aca el code @echo off cd C:\ tasklist>>analizar.txt
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^System" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^csrss.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^services.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^smss.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^alg.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^winlogon.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^lsass.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=2 delims=:" %%_ in ('findstr /i /n /r "^0" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=2 delims=:" %%_ in ('findstr /i /n /r "^928" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=2 delims=:" %%_ in ('findstr /i /n /r "^1008" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=2 delims=:" %%_ in ('findstr /i /n /r "^1076" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=2 delims=:" %%_ in ('findstr /i /n /r "^1120" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=2 delims=:" %%_ in ('findstr /i /n /r "^1248" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^explorer.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^egui.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^ctfmon.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1
for /f "tokens=1 delims=:" %%_ in ('findstr /i /n /r "^ekrn.exe" "analizar.txt"') do ( set "n_line=%%_" ) ( ECHO %n_line%d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1 ping -n 1 127.0.0.1
:elimina setlocal enabledelayedexpansion
set /a nchar=0
for /f "tokens=1 delims=*" %%x in (analizar.txt) do ( set "string=%%x" call :contar TASKKILL /T /F /IM "%string%" ping -n 1 127.0.0.1 call :ultimo )
:contar If /i "!string:~%nchar%,1!" == "" goto:eof set /a nchar+=1 goto Contar
:ultimo ( ECHO 1d ECHO E ) | EDLIN /B analizar.txt > nul 2>&1 if nchar==0 goto :end else goto :elimina
:end del /Q analizar.bak del /Q analizar.txt
|
|
« Última modificación: 1 Diciembre 2009, 15:02 pm por flony »
|
En línea
|
si un problema no tiene solucion entonces no es un problema...es algo inevitable 
|
|
|
Novlucker
Ninja y
Colaborador
 
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Bueno, si que es mejorable, sobre todo por el uso de archivos temporales en disco, lo cual se podría evitar. De cualquier manera no esperes mucho, ya que por lo que veo no intentas hacer nada "útil" .. "exe molestos"? System, csrss.exe, services.exe, smss.exe, alg.exe, winlogon.exe, lsass.exe, explorer.exe, egui.exe, ctfmon.exe y ekrn.exe?  Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
flony
Desconectado
Mensajes: 585
|
a ver archivos temporales????  ni a gancho los uso....dos si lo lees lo que hace las primeras lineas es borrar de un txt esos procesos....como que nada util  seguro algun desquiciado si se le canta lo usa mal....pero si ves el code hace lo contrario y si quisiera molestarle la vida a alguien borro un par de dll y listo con este code cuando mucho sale un cartel que te da un eterno minuto para usar shutdow -a ....y surgio xq no queria usar el optimizador del tune up...xq no tengo ningun nivel de decicion en lo que quiero borrar o no...........que parte de criticas constructivas no entendiste....por favor si van a opinar LEEAN el fack  code si no ni opinen...otra cosa si lo pruban tengan a mano un shutdow -a
|
|
« Última modificación: 1 Diciembre 2009, 16:03 pm por flony »
|
En línea
|
si un problema no tiene solucion entonces no es un problema...es algo inevitable 
|
|
|
Novlucker
Ninja y
Colaborador
 
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Lo había mirado al revés .. fui directamente al TASKKILL XD El analizar.txt no es un archivo temporal? 
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
flony
Desconectado
Mensajes: 585
|
 tenes razon en eso  lo del txt
|
|
|
En línea
|
si un problema no tiene solucion entonces no es un problema...es algo inevitable 
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
 
Desconectado
Mensajes: 3.069
/^$/
|
No gastes demasiados recursos. Como supongo que eres administrador de tu sistema y es para uso propio, podrías usar WMIC.
|
|
« Última modificación: 1 Diciembre 2009, 17:43 pm por Leo Gutierrez. »
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
 
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
WMIC! fue lo primero que pensé!  Escribes un comando con WHERE y OR haciendo referencia a los ejecutables y listo  Por poner un ejemplo en vbs (ahora no tengo permisos de utilizar WMIC desde línea de comandos  ) set taskmgr = GetObject("winmgmts:{impersonationLevel=impersonate}").ExecQuery ("select * from Win32_Process where name='calc.exe' or name='notepad.exe'") for each process in taskmgr process.terminate next
Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
Novlucker
Ninja y
Colaborador
 
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Ahora si ... algo así para terminar los procesos que prefieras  C:\>wmic process where "name='notepad.exe' or name='calc.exe'or name='mspaint.exe'" delete Eliminando la instancia \\NOVLUCKE-A054CB\ROOT\CIMV2:Win32_Process.Handle="1508" Instancia eliminada correctamente. Eliminando la instancia \\NOVLUCKE-A054CB\ROOT\CIMV2:Win32_Process.Handle="2044" Instancia eliminada correctamente. Eliminando la instancia \\NOVLUCKE-A054CB\ROOT\CIMV2:Win32_Process.Handle="536" Instancia eliminada correctamente. Eliminando la instancia \\NOVLUCKE-A054CB\ROOT\CIMV2:Win32_Process.Handle="1452" Instancia eliminada correctamente. C:\>
O se podría hacer lo contrario por medio de la clausula NOT, matar todo MENOS  Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
|
Novlucker
Ninja y
Colaborador
 
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
[offtopic]Si lo he probado!  , lo tengo instalado en XP y en Win 7 viene por defecto, esta excelente!, me falta hacer más pruebas pero de cualquier manera sería interesante que alguien preguntara sobre eso, el problema es que nadie lo conoce  [/offtopic]
|
|
« Última modificación: 2 Diciembre 2009, 11:40 am por Novlucker »
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
|
|