Script python para borrar líneas de un archivo

El siguiente script, toma un archivo patrón, lo recorre y va leyendo línea a línea comparando si existe dicha línea en otro archivo, si coincide la línea que se está leyendo en la iteración, la borra del segundo archivo.

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os, sys, re, subprocess

archivo1 = raw_input("Introduzca archivo de líneas para borrar: ")
archivo2 = raw_input("Introduzca archivo donde se borrarán las líneas: ")
archivo_r = open(r''+archivo1+'', 'r')
linea = archivo_r.readline()

while linea <> "":
    print "Borrando linea: "+linea.strip()
    lin = re.sub('/','\/',linea.strip())
    subprocess.call(['sed','-i','/'+lin+'/d',archivo2])
    linea = archivo_r.readline()

archivo_r.close()

En este ejemplo, cambié un “/” por “\/” con la intención de que no me arroje un error de inconsistencia o por falta de interpretación del símbolo.

Advertisements

About felixurbina

Humano con todos los defectos y virtudes que vienen de fábrica.
This entry was posted in Python. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s