Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

258
Vistas
¿Hay alguna forma de eliminar el encabezado duplicado en un archivo en Unix?

¿Cómo puedo eliminar varios encabezados de un archivo? Traté de usar el siguiente código después de encontrarlo en ¿Cómo puedo eliminar líneas duplicadas en un archivo en Unix? .

 awk '!x[$0]++' file.txt

Está eliminando todos los registros duplicados en el archivo. Pero en mi caso, solo necesito que se eliminen los duplicados del encabezado, no los registros duplicados en el archivo. Por ejemplo, tengo un archivo con los siguientes datos:

 column1, column2, column3, column4, column5 value11, value12, value13, value14, value14 value21, value22, value23, value24, value25 value31, value32, value33, value34, value35 value41, value42, value43, value44, value45 value51, value52, value53, value54, value55 value21, value22, value23, value24, value25 column1, column2, column3, column4, column5 value11, value12, value13, value14, value14 value21, value22, value23, value24, value25 column1, column2, column3, column4, column5 column1, column2, column3, column4, column5

Estoy esperando la salida de la siguiente manera:

 column1, column2, column3, column4, column5 value11, value12, value13, value14, value14 value21, value22, value23, value24, value25 value31, value32, value33, value34, value35 value41, value42, value43, value44, value45 value51, value52, value53, value54, value55 value21, value22, value23, value24, value25 value11, value12, value13, value14, value14 value21, value22, value23, value24, value25
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Si sabe que la primera línea contiene el encabezado, simplemente elimine todas las demás instancias de eso.

 awk 'FNR==1 { header = $0; print } $0 != header' file

Si eso no funciona, díganos cómo podemos identificar una línea de encabezado. Si es solo una cadena estática, grep -vF 'that string' o si coincide con una expresión regular en particular, grep -v 'that regex' .

over 4 years ago · Santiago Trujillo Denunciar

0

Esto podría funcionar para usted (GNU sed):

 sed -r '1h;1!G;/^(.*)\n\1/d;P;D' file
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda