Tengo un archivo que se parece a este ejemplo de juguete. Mi archivo actual tiene 4 millones de líneas, de las cuales debo eliminar unas 10.
ID  Data1  Data2
1    100    100
2    100    200
3    200    100
ID  Data1  Data2
4    100    100
ID  Data1  Data2
5    200    200
Quiero eliminar las líneas que se parecen al encabezado, excepto la primera línea.
Archivo final:
ID  Data1  Data2
1    100    100
2    100    200
3    200    100
4    100    100
5    200    200
¿Cómo puedo hacer esto?
Respuesta aceptada:
header=$(head -n 1 input)
(printf "%sn" "$header";
 grep -vFxe "$header" input
) > output
- tomar la línea de encabezado del archivo de entrada en una variable
- imprimir el encabezado
- procesar el archivo con greppara omitir líneas que coincidan con el encabezado
- capture el resultado de los dos pasos anteriores en el archivo de salida