On Tue, 17 Jun 2014 13:07:36 +0000, låzaro wrote:
con Ruby y sin metaprograming, bien simplificado:
# abrimos un fichero en modo append
fichero=File.open('nuevofichero.ext','a')
# declaramos el nombre de usuario que buscaremos
username = 'coco'
# el nuevo valor que tendra Calling-Station-Id
valornuevo= 'abcwxyz'
# iteramos por las lineas del fichero original
for linea in IO.read('/directorio/fichero.ext')
# si la linea incluye la cadena de texto username y ademas "coco"
if linea.include? 'User-Name' and linea.include? username
# marcamos que este listo
@semaforo=true
# y copiamos la linea
fichero.write linea
# luego si llegamos a la linea Calling-Station-Id
# y la variable indica que se encontró el usuario
elsif @semaforo and linea.include? 'Calling-Station-Id'
# escribimos la linea en el fichero de manera modificada
# concatenamos el valor de la clave con la variable y las
comillas
fichero.write 'Calling-Station-Id = "' + valornuevo +'"'
# luego si la linea ni pinta ni da color, la ponemos tal se
plantea
else
fichero.write linea
end
end
Tiene sentido, es un acercamiento simple.
De hecho creo que en bash podria lograrse algo parecido con un ciclo
para las lineas y el comando sed.
--
Este mensaje ha sido analizado por MailScanner
en busca de virus y otros contenidos peligrosos,
y se considera que est� limpio.
______________________________________________________________________
Lista de correos del Grupo de Usuarios de Tecnologías Libres de Cuba.
Gutl-l@jovenclub.cu
https://listas.jovenclub.cu/cgi-bin/mailman/listinfo/gutl-l