Autoit en español
Aplicaciones con Autoit - Juan Antonio Villalpando
-- Tutorial de iniciación a Autoit --
Volver al índice del tutorial
____________________________
25.- Archivos. Sustituir.
- Vamos a ver un ejemplo en donde partimos de un archivo al cual le debemos eliminar líneas y cambiar cadenas de caracteres. Está basado en el tutorial anterior.
- Partimos de este archivo en donde se encuentra la MAC de dispositivos de Internet y su fabricante correspondiente.
- Sabes que cada dispositivo de internet: router, ordenador, móvil,... tiene asignado un número MAC hexadecimal de la forma : D4-38-9C-D4-8A-E3
- Las tres primeras parejas de números indican el fabricante, por ejemplo D4-38-9C indica que ha sido fabricado por Sony Mobile.
------------------------------------------------------------------------------------------------------
- Partimos de este archivo, en donde se encuentran algunas MAC y su correspondiente fabricante:
mac.txt |
OUI/MA-L Organization
company_id Organization
Address
E0-43-DB (hex) Shenzhen ViewAt Technology Co.,Ltd.
E043DB (base 16) Shenzhen ViewAt Technology Co.,Ltd.
9A,Microprofit,6th Gaoxin South Road, High-Tech Industrial Park, Nanshan, Shenzhen, CHINA.
shenzhen guangdong 518057
CN
24-05-F5 (hex) Integrated Device Technology (Malaysia) Sdn. Bhd.
2405F5 (base 16) Integrated Device Technology (Malaysia) Sdn. Bhd.
Phase 3, Bayan Lepas FIZ
Bayan Lepas Penang 11900
MY
3C-D9-2B (hex) Hewlett Packard
3CD92B (base 16) Hewlett Packard
11445 Compaq Center Drive
Houston 77070
US
9C-8E-99 (hex) Hewlett Packard
9C8E99 (base 16) Hewlett Packard
11445 Compaq Center Drive
Houston 77070
US
B4-99-BA (hex) Hewlett Packard
B499BA (base 16) Hewlett Packard
11445 Compaq Center Drive
Houston 77070
US
1C-C1-DE (hex) Hewlett Packard
1CC1DE (base 16) Hewlett Packard
11445 Compaq Center Drive
Houston 77070
US
|
- Queremos simplificar ese archivo y dejarlo de esta manera:
macsimple.txt |
E0-43-DB Shenzhen ViewAt Technology Co.,Ltd. 24-05-F5 Integrated Device Technology (Malaysia) Sdn. Bhd. 3C-D9-2B Hewlett Packard 9C-8E-99 Hewlett Packard B4-99-BA Hewlett Packard 1C-C1-DE Hewlett Packard
|
- Para ello utilizamos el siguiente código:
mac.au3 |
; Juan A. Villalpando - KIO4.COM
;;;;;;;;;;;;;;; Con FileReadLine ;;;;;;;;;;;;;;;;;;;;;;;;;;;;
$carpeta = "C:\Carpeta_de_AutoIt\"
$archivo = FileOpen($carpeta & "mac.txt", 0)
$completo = ""
While 1
$linea = FileReadLine($archivo)
if @error = -1 Then ExitLoop
if StringInStr($linea, "(hex)") Then
$linea = StringReplace($linea, '(hex)', '')
$completo = $completo & $linea & @CRLF
EndIf
Wend
; MsgBox(0, "El archivo completo con FileReadLine", $completo)
FileClose($archivo)
$archivo = FileOpen($carpeta & "macsimple.txt", 1)
FileWrite($archivo, $completo)
FileClose($archivo)
|
________________________________________________
- Comentarios.
- Abrimos el archivo = "mac.txt"
- Mediante el bucle While vamos leyendo línea a línea.
- Cada vez que leemos una línea comprobamos si contiene la cadena "(hex)"
- Si contiene esa cadena, la reemplazamos por un vacío.
-
Añadimos esa línea a la variable $completo
- Al final la variable $completo la guardamos en otro archivo llamado "macsimple.txt"
_________________
- Propuesta.
- El archivo completo donde se encutran las MAC lo puedes bajar de:
http://standards-oui.ieee.org/oui.txt
- Modifica toma este archivo para obtenerlo de forma simplificada.
|