Programación Web y Scripting > Python
Borrar Líneas De Un Archivo
(1/1)
RadicalEd:
Hola chicos de SoloCodigo, tengo una pregunta pregunta como siempre, estoy haciendo un pequeño shell en python para el manejo del proxy de la empresa, estoy escribiendo sobre unos ficheros y todo bien, ahora quisiera saber como buscar un dato en si y eliminarlo, tengo esto todo me funciona pero me quedo en lo de eliminar el dato.
Los puntos es para lo de la identación.
--- Código: Text ---#! /usr/bin/python# Desarrollado por RadicalEdimport osimport sys os.system('clear') def menu():...capt = 0...while capt <1 or capt>8:......print('ESCOJA QUE DESEA HACER')......print('(1) Agregar IP')......print('(2) Agregar Página')......print('(3) Eliminar IP')......print('(4) Eliminar Página')......print('(5) Ver IP\'s guardadas')......print('(6) Ver páginas guardadas')......print('(7) Reiniciar Proxy')......print('(8) Salir')......capt = int(raw_input('Opción: '))......return capt capt=0while capt != 16:...capt = menu()...if capt == 1:......h=raw_input('Digite IP: ')......f = open(r'./allow.raed', 'a')......f.write(h+'\n')......f.close()...elif capt == 2:......h=raw_input('Digite página: www.')......f = open(r'./allow.sites', 'a')......f.write(h+'\n')......f.close()...elif capt == 3:......file = open('./allow.raed')......ip = raw_input('Digite IP a eliminar: ')......while 1:.........line = file.readline().........if line == ip+'\n':............print 'La IP si ta'............print line,.........if not line: break...elif capt == 4:......file = open('./allow.sites')......pagi = raw_input('Digite página a eliminar: ')......while 1:.........line = file.readline().........if line == pagi+'\n':............print 'La página si ta'............print line,.........if not line: break...elif capt == 5:......print file('./allow.raed').read()...elif capt == 6:......print file('./allow.sites').read()...elif capt == 7:......os.system('service squid restart')...elif capt == 8:......sys.exit() Alguna ayuda???
Gracias Chao
NRM:
en este momento solo se me ocurre esta forma.
--- Código: Text ---output = ""fdi = open("c:\\note.txt", "r")for line in fdi: if line.strip() != "line 2": output += linefdi.close()fdo = open("c:\\note.txt", "w")fdo.write(output)fdo.close()
como algo extra, te recomiendo que uses el modulo cmd[1] para hacer scripts que tengan un sistema de menus como el que pusiste arriba.
nrm
[1] - http://docs.python.org/lib/module-cmd.html
RadicalEd:
Thanks NRM quedo full, mira por el momento lo deje de esta forma, mientras aprendo a manejar el cmd:
--- Código: Text ---#! /usr/bin/python# Desarrollado por RadicalEdimport osimport sys os.system('clear') def menu(): capt = 0 while capt <1 or capt>8: print('ESCOJA QUE DESEA HACER') print('(1) Agregar IP') print('(2) Agregar Página') print('(3) Eliminar IP') print('(4) Eliminar Página') print('(5) Ver IP\'s guardadas') print('(6) Ver páginas guardadas') print('(7) Reiniciar Proxy') print('(8) Salir') capt = int(raw_input('Opción: ')) return capt capt=0while capt != 16: capt = menu() if capt == 1: h=raw_input('Digite IP: ') f = open(r'./allow.raed', 'a') f.write(h+'\n') f.close() elif capt == 2: h=raw_input('Digite página: www.') f = open(r'./allow.sites', 'a') f.write(h+'\n') f.close() elif capt == 3: output = "" ip = raw_input('Digite IP a eliminar: ') f = open("./allow.raed", "r") for line in f: if line.strip() != ip: output += line f.close() f = open("./allow.raed", "w") f.write(output) f.close() elif capt == 4: output = "" pag = raw_input('Digite página a eliminar: www.') f = open("./allow.sites", "r") for line in f: if line.strip() != pag: output += line f.close() f = open("./allow.sites", "w") f.write(output) f.close() elif capt == 5: print file('./allow.raed').read() elif capt == 6: print file('./allow.sites').read() elif capt == 7: os.system('service squid restart') elif capt == 8: sys.exit()
Navegación
Ir a la versión completa