elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Ayuda con batch
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con batch  (Leído 2,475 veces)
kriminal_27

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Ayuda con batch
« en: 27 Abril 2013, 17:09 pm »

Muchas gracias por su atencion! estoy en la necesidad de crear un bat que realice lo siguiente:
Entorno: dominio
Consulta: buscar un usuario
Resultado: poder realizarle un logoff

En si lo que hace el script es, pedirle al quien lo ejecute, que escriba el nombre del usuario , hace una busqueda ( con query session o query user ) en los servidores que ya les seteo dentro del bat y devuelve el resultado "el usuario esta logeado en X equipo".
Luego deberia darme las opciones por ejemplo para hacerle un logoff a ese usuario o bien hacer una nueva busqueda.

La primera parte, ya la realice , se me esta complicando para crear una variable que me permita poder hacer el "logoff"

Les comparto lo precario y novato que arme pero que funciona :)

Código
  1. :inicio
  2. @echo off
  3. set srv01=%Temp%\srv01.txt
  4. set /p User=Ingrese Nombre o Apellido de Usuario :
  5. echo Consultando...
  6. query session /server:SERVER | find /i "%User%" > %srv01%
  7. @echo off
  8. findstr "%User%" "%srv01%"
  9. if %errorlevel%==0 (echo El usuario "%User%" esta logeado en SERVER01 ) else (echo No se encontro "%User%" logeado en SERVER01 )
  10. @echo off
  11. echo Seleccione una opcion
  12. echo --------------------
  13. echo A. Realizar Logoff
  14. echo B. Buscar otro Usuario
  15. echo C. Salir
  16. choice /c:abc /n /M "Que desea hacer?"
  17. if errorlevel 2 goto Inicio
  18. if errorlevel 1 goto Logoff
  19.  
  20.  
  21. :Salir
  22.  
  23. :logoff
  24. ACAA COMO HAGOO
  25.  
  26. goto inicio


Lo que devuelve el "query session" en el .txt es lo siguiente:

 rdp-tcp#1         Usuario                    3  Active  rdpwd            

Donde el el "rdp-tcp#1" (session name) es lo que varia junto a  "3" ( id )

Yo necesitaria unir ese "session name" a "Usuario" y poder hacer un "logoff SESSIONNAME /server:SERVER01"

No se si me exprese bien, pero desde ya agradezco el tiempo de vosotros


« Última modificación: 30 Abril 2013, 12:15 pm por EleKtro H@cker » En línea

Meine programmen

Desconectado Desconectado

Mensajes: 121



Ver Perfil
Re: Ayuda con batch
« Respuesta #1 en: 27 Abril 2013, 17:54 pm »

Si no entiendo mal, lo que buscas es meter en una variable el session name, y a partir de ahi tu ya sabes hacer el logoff, ¿no? De ser así, el codigo quedaria mas o menos asi:

Código:
@echo off
:inicio
cd\
echo.
set srv01=%Temp%\srv01.txt
set /p User=Ingrese Nombre o Apellido de Usuario :
echo.
echo Consultando...
echo.
query session /server:SERVER | find /i "%User%" > %srv01%
echo.
findstr "%User%" "%srv01%">>nul
if %errorlevel%==0 (echo El usuario "%User%" esta logeado en SERVER01 ) else (echo No se encontro "%User%" logeado en SERVER01 )
echo.
echo Seleccione una opcion
echo --------------------
echo.
echo A. Realizar Logoff
echo B. Buscar otro Usuario
echo C. Salir
echo.
choice /c:abc /n /M "Que desea hacer?"
if errorlevel 3 goto Salir
if errorlevel 2 goto Inicio
if errorlevel 1 goto Logoff


:Salir
exit

:logoff
for /f "tokens=1" %%a in ('type "%srv01%"') DO (set Sessionname=%%A)
(En esta linea introduces el comando para hacer el logoff)
pause
cls
goto inicio

Esto seria en caso de que el Session name no pudiera llevar espacios. Si llevase espacios habria que calentarse un poco mas la cabeza pero se podria hacer.


« Última modificación: 27 Abril 2013, 18:08 pm por Meine programmen » En línea

REMEMBER! Reality is an illusion, the universe is a hologram, BUY GOLD! BYE!!

kriminal_27

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Ayuda con batch
« Respuesta #2 en: 27 Abril 2013, 20:21 pm »

Muchas gracias capo, la verdad que estoy un paso mas cerca, estoy investigando un poco porque el resultado que se guarda en el txt empieza justamente con 1 espacio en blanco y luego sigue el resto  :(
estoy viendo la posibilidad de en alguna parte del codigo meterle algo que "busque" el espacio en blanco y lo borre
otra cosa, mira asi es como me devuelve el query user:

 usuario                                  73  Disc         1:17  27/04/2013 07:59 a.m.

con el tokens y delim puedo hacer que me leea el "73" ?? y pueda hacer un "logoff %var% donde el var corresponde al 73??

Chas graciasss
En línea

kriminal_27

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: Ayuda con batch
« Respuesta #3 en: 27 Abril 2013, 21:01 pm »

listo Meine programmen !!! ya funciona okkk !! le cambie que busque el numero de sesion mas que nombre de sesion.

quedo asi:

Código
  1. for /f "tokens=2" %%a in ('type "%srv01%"') do (set SessionID=%%a)
  2. logoff %SessionID% /server:serv01

Muchas gracias!

« Última modificación: 30 Abril 2013, 12:17 pm por EleKtro H@cker » En línea

Eleкtro
Ex-Staff
*
Conectado Conectado

Mensajes: 9.788



Ver Perfil
Re: Ayuda con batch
« Respuesta #4 en: 30 Abril 2013, 12:18 pm »

@Kriminal_27
Lee las indicaciones de mi firma para no estar editando todos tus mensajes.

Un saludo!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ayuda cn batch...
Scripting
miguel17x 0 2,165 Último mensaje 3 Septiembre 2006, 03:25 am
por miguel17x
Ayuda con batch « 1 2 »
Scripting
ProHacker 19 8,368 Último mensaje 7 Febrero 2011, 08:12 am
por leogtz
Ayuda [BATCH]
Scripting
najmuddin 7 4,034 Último mensaje 1 Julio 2008, 13:54 pm
por sirdarckcat
(Soclucionado) [BATCH] Ayuda con este batch! (%ERRORLEVEL%)
Scripting
SuperDraco 5 13,786 Último mensaje 23 Enero 2011, 15:23 pm
por SuperDraco
[Batch] Insertar un batch dentro de un batch que fabrique un .txt
Scripting
$pedrojo2704 2 5,466 Último mensaje 23 Agosto 2012, 10:08 am
por $pedrojo2704
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines