Domingo 22 de Diciembre de 2024, 09:27
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación Web y Scripting
»
Python
(Moderador:
arielb
) »
Borrar Líneas De Un Archivo
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Borrar Líneas De Un Archivo (Leído 4103 veces)
RadicalEd
Moderador
Mensajes: 2430
Nacionalidad:
Borrar Líneas De Un Archivo
«
en:
Miércoles 5 de Diciembre de 2007, 17:20 »
0
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 RadicalEd
import os
import 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=0
while 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
Tweet
El pasado son solo recuerdos, el futuro son solo sueños
NRM
Miembro MUY activo
Mensajes: 279
Nacionalidad:
Re: Borrar Líneas De Un Archivo
«
Respuesta #1 en:
Jueves 6 de Diciembre de 2007, 05:39 »
0
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 += line
fdi.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
Moderador
Mensajes: 2430
Nacionalidad:
Re: Borrar Líneas De Un Archivo
«
Respuesta #2 en:
Jueves 6 de Diciembre de 2007, 20:21 »
0
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 RadicalEd
import os
import 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=0
while 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()
El pasado son solo recuerdos, el futuro son solo sueños
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación Web y Scripting
»
Python
(Moderador:
arielb
) »
Borrar Líneas De Un Archivo