Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/10/2013, 14:04
ingtux
 
Fecha de Ingreso: octubre-2013
Ubicación: México
Mensajes: 1
Antigüedad: 11 años, 1 mes
Puntos: 0
escritura multiple de archivos en python

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
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. #  
  5. import os
  6. import glob
  7. def rot47(s):
  8.     x = []
  9.     for i in xrange(len(s)):
  10.         j = ord(s[i])
  11.         if j >= 33 and j <= 126:
  12.             x.append(chr(33 + ((j + 14) % 94)))
  13.         else:
  14.             x.append(s[i])
  15.     return ''.join(x)
  16.  
  17.  
  18. list_of_files = glob.glob('/ruta/archivos/test_ofus/*.log')
  19. for file_name in list_of_files:
  20.   origen = open(file_name, 'r')
  21.   destino = open(file_name + ".txt", "w")
  22.   for test in origen.readlines():
  23.       split=test.split("|")
  24.       lineas=test.replace(split[4],rot47(split[4]))
  25. destino.write(lineas)
  26. origen.close()
  27. 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

Última edición por razpeitia; 03/10/2013 a las 14:41 Razón: corrección