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

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [BATCH] Novato ayuda con programa .bat[Solucionado]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [BATCH] Novato ayuda con programa .bat[Solucionado]  (Leído 4,939 veces)
Iridiel

Desconectado Desconectado

Mensajes: 4


Ver Perfil
[BATCH] Novato ayuda con programa .bat[Solucionado]
« en: 13 Enero 2011, 17:08 pm »

Antes que nada presentarme a todos ustedes. No tengo muchas nociones de programacion y usando el google tratando de encontrar algun sitio donde explicaran como resolver un problema que tengo he dado con su magnifico foro. Espero que puedan echarme una mano. Mi problema es el siguiente.

Tengo necesidad de crear un archivo .bat o similar que sea capaz de coger la mac de un equipo, buscarla en un archivo .txt y devolver por pantalla una cadena de texto que se encuentra en dicho archivo .txt separado por espacio. Es decir:

En el archivo txt habra una lista de macs y nombres tipo "40-26-FF-A3-87-42 pepe" yo necesito que saque la mac del ordenador, la muestre en pantalla y a continuacion me muestre a que nombre va asociada dicha mac.

Si pudieran echarme un cable les estaria muy agradecidos. Ya se que esto es pedir que me den el trabajo hecho, pero si por lo menos pudieran orientarme se lo agradeceria. Mis conocimientos son escasos y necesitaria poder resolver esto.

Un saludo
Iridiel


« Última modificación: 14 Enero 2011, 22:39 pm por Leo Gutiérrez. » En línea

xassiz~


Desconectado Desconectado

Mensajes: 457



Ver Perfil WWW
Re: [BATCH] Novato ayuda con programa .bat
« Respuesta #1 en: 13 Enero 2011, 18:34 pm »

Código
  1. @echo off
  2. setlocal enabledelayedexpansion
  3.  
  4. call:getMac
  5. for /f "tokens=*" %%%% in (file.txt) do (
  6. set "line=%%~%%"
  7. if "!line:~0,17!" == "!mac!" (
  8. echo !line:~18!
  9. )
  10. )
  11.  
  12. :getMac ()
  13. for /f "tokens=*" %%x in ('wmic nicconfig get MACAddress') do (
  14. set "mac=%%x"
  15. if "!mac:~2,1!" == ":" (
  16. set "mac=!mac:~0,17!"
  17. goto:eof
  18. )
  19. )
  20. set "mac=[unknown]"
  21. goto:eof
Acabo de hacerlo y testearlo en Windows 7.


En línea

Iridiel

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: [BATCH] Novato ayuda con programa .bat
« Respuesta #2 en: 13 Enero 2011, 19:07 pm »

EDIT: Rectificando jejeje.

 Muchas gracias por tu ayuda. Esto es justo lo que buscaba. Ahora que ya solo me queda asignar ese nombre a una variable y trabajar con ella. Muchisimas gracias, en serio  ;-)
« Última modificación: 13 Enero 2011, 19:27 pm por Iridiel » En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: [BATCH] Novato ayuda con programa .bat
« Respuesta #3 en: 13 Enero 2011, 19:21 pm »

Podrías poner algunas MAC's de ejemplo, como si fuera el archivo file.txt, para ver la estructura del mismo.
En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
xassiz~


Desconectado Desconectado

Mensajes: 457



Ver Perfil WWW
Re: [BATCH] Novato ayuda con programa .bat
« Respuesta #4 en: 13 Enero 2011, 19:25 pm »

EDIT: Rectificando jejeje.

 Muchas gracias por tu ayuda. Esto es justo lo que buscaba. Ahora que ya obtengo en una variable el nombre correspondiente a la mac ya puedo hacer lo que quiera con el. Muchisimas gracias, en serio  ;-)
De nada, espero que entiendas el código y no solo lo utilices :rolleyes:

En línea

Iridiel

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: [BATCH] Novato ayuda con programa .bat
« Respuesta #5 en: 13 Enero 2011, 19:31 pm »

Podrías poner algunas MAC's de ejemplo, como si fuera el archivo file.txt, para ver la estructura del mismo.

Pues el archivo entiendo que debe ser algo asi:

0F:44:GG:1C:E7:02 PEPE
A0:27:GD:CC:E7:04 MANOLO
BB:38:1D:13:E7:05 ANTONIO
50:24:AB:14:E7:11 JUAN
12:24:VV:1F:E7:05 CARLOS

De nada, espero que entiendas el código y no solo lo utilices :rolleyes:



Claro, aun tengo que añadirle alguna funcionalidad. Y si logro entender como lo has hecho, pues seguramente me ayude con futuras dudas. Ademas, mi idea es poner el nombre correspondiente a la mac en una variable para poder añadir dicho nombre al reg de windows. Asi que no se queda solo en esto.

Muchas gracias otra vez por la ayuda.
« Última modificación: 13 Enero 2011, 19:34 pm por Iridiel » En línea

xassiz~


Desconectado Desconectado

Mensajes: 457



Ver Perfil WWW
Re: [BATCH] Novato ayuda con programa .bat
« Respuesta #6 en: 13 Enero 2011, 20:09 pm »

Ademas, mi idea es poner el nombre correspondiente a la mac en una variable para poder añadir dicho nombre al reg de windows. Asi que no se queda solo en esto.
Solo tienes que cambiar el echo por un set.
En línea

Iridiel

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: [BATCH] Novato ayuda con programa .bat
« Respuesta #7 en: 13 Enero 2011, 20:19 pm »

Si claro. Como ejemplo tonto, para ver si lo hacia bien puse:

Código:
@echo off
setlocal enabledelayedexpansion
 
call:getMac
for /f "tokens=*" %%%% in (claves.txt) do (
set "line=%%~%%"
if "!line:~0,17!" == "!mac!" (
set "nombre=!line:~18!"
echo !nombre!
pause
exit
)
)


>nul pause
exit
 
:getMac ()
for /f "tokens=*" %%x in ('wmic nicconfig get MACAddress') do (
set "mac=%%x"
if "!mac:~2,1!" == ":" (
set "mac=!mac:~0,17!"
goto:eof
)
)
set "mac=[unknown]"
goto:eof

Y me muestra el valor de la variable "nombre" perfectamente. Ahora mirando por aqui, usando la logica y la ayuda del comando reg seguro que saco el resto :P
« Última modificación: 13 Enero 2011, 20:20 pm por Iridiel » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con Batch. [Solucionado]
Scripting
BlacKGilgamesH 2 3,784 Último mensaje 6 Abril 2010, 20:25 pm
por BlacKGilgamesH
ayuda con musica oculta[batch][Solucionado]
Scripting
Kalister 5 5,667 Último mensaje 5 Julio 2010, 08:26 am
por leogtz
(solucionado )[BATCH] Ayuda con el comando DIR en archivos numéricos.
Scripting
SuperDraco 2 5,020 Último mensaje 27 Febrero 2011, 13:40 pm
por SuperDraco
[SOLUCIONADO][Batch | VBS]Ejecutar programa al cerrar otro.
Scripting
RyogiShiki 4 10,994 Último mensaje 8 Abril 2011, 14:33 pm
por RyogiShiki
[Solucionado][Batch] Programa para cambiar dispositivos de sonido
Scripting
Anonymous250 8 18,082 Último mensaje 19 Octubre 2016, 20:13 pm
por dablah
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines