Linux: Grep o sed para buscar y borrar lineas de archivos que contengan el texto que coincida

Necesito comparar patrones de texto de un archivo en Linux y borrar todas las lineas en el segundo archivo que contengan el patron igual o que haya coincidido en el primer archivo.

Gracias a que estoy trabajando en Linux pense que es posible utilziar Sed o Grep para solucionarlo. Para tener un ejemplo completo mi primer archivo es un sitemap en formato urllist, el cual contiene lineas como las siguientes:








Grep: Como eliminar filas de los archivos

Lo que necesito hacer aca es borrar cada linea del urrlist que contenta feeds, tags o trackbacks . Para lo cual ejecuto el siguiente comando en la terminal de Linux:

:~$ grep -Ev 'feed|tag|trackback' urllist.txt > urllist.depurado.txt

Con el comando anterior, voy a remover todas las palabras del archivo urllist.txt contenidas dentro de las comillas ( ‘ ) y separados por pipe | y luego las envio al archivo de depuracion. Con lo cual de 351 lineas me han quedado tan solo 193.

Via | sed or grep : delete lines containing matching text

2 comments

  1. Utilísimo. Muchas gracias, 🙂
    Ahora, si además de aprender estas cositas que nos hacen la vida má fácil, aprendieras a escribir, serías el jefe, jeje. Y es que tu ortografía «tildes-free» da un poco de grima.

    Saludos.

  2. Excelente, veo que lo posteaste hace un par de años 😛 para que sepas, todavía le sigue sirviendo a la gente, me ayudo bastante 😀

Comentario, Preguntas o agradecimientos?