Estoy obteniendo resultados de un programa que primero produce una línea que es un montón de encabezados de columna, y luego un montón de líneas de datos. Quiero cortar varias columnas de este resultado y verlo ordenado de acuerdo con varias columnas. Sin las cabeceras, el corte y la clasificación se lleva a cabo fácilmente a través de la -k
opción de sort
, junto con cut
o awk
para ver un subconjunto de las columnas. Sin embargo, este método de clasificación mezcla los encabezados de columna con el resto de las líneas de salida. ¿Hay una manera fácil de mantener los encabezados en la parte superior?
head
está leyendo más de una línea en un búfer y tirando la mayor parte. Mi sed
idea tuvo el mismo problema.
lseek
entrada capaz, por lo que no funcionará cuando se lea desde una tubería. Funcionará si redirige a un archivo >outfile
y luego se ejecuta{ head -n 1; sort; } <outfile
{ head -1; sort; }
funcione. Siempre elimina un montón de texto después de la primera línea. ¿Alguien sabe por qué sucede esto?