Buenas Tardes
Siendo este mi primer post dentro del foro mando saludos a todos y les comento sobre una consulta que tengo sobre un script en python que me encuentro haciendo.
Dentro de mi servidor tengo una serie de archivos de log que se generan x tiempo, lo que yo necesito hacer es tomar esos archivos, ofuscar un campo determinado de cada uno de estos archivos, y una vez que lo hace se debe crear por cada archivo analizado otro archivo de salida en donde se muestre el contenido del archivo pero con el campo ofuscado y todo lo demas igual.
He hecho un script como este:
----------------------------------------------------------
Código Python:
Ver original#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
#
import os
import glob
def rot47(s):
x = []
for i in xrange(len(s)):
j = ord(s[i])
if j >= 33 and j <= 126:
x.append(chr(33 + ((j + 14) % 94)))
else:
x.append(s[i])
return ''.join(x)
list_of_files = glob.glob('/ruta/archivos/test_ofus/*.log')
for file_name in list_of_files:
origen = open(file_name, 'r')
destino = open(file_name + ".txt", "w")
for test in origen.readlines():
split=test.split("|")
lineas=test.replace(split[4],rot47(split[4]))
destino.write(lineas)
origen.close()
destino.close()
--------------------------------------------------------------------------
lo anterior lo realizo con rot47 para el ofuscado. El problema es que si el archivo origen tiene 4 lineas, en el archivo destino solo crea 1 y si hay mas archivos a generar se generan con 0 lineas, es decir, unicamente lee una linea del archivo en cuestion siendo q tiene más.
Esa sería mi consulta, espeor puedan apoyarme y darme algunas sugerencias al respecto.
Muchas gracias, saludos a todos.
Atte. ingtux