elimine la primera línea del archivo solo si está en blanco usando sed

elimine la primera línea del archivo solo si está en blanco usando sed

Tengo una solución para esto en awk:

awk '{if (NR==1 && NF==0) next};1' somefile

pero no pude encontrar uno que funcionara en sed. P.ej,

sed -i.bak '/^$/{1,1d;}' somefile

Terminé eliminando la primera línea en blanco que encontró (no soy un sedexperto, así que solo estaba probando cosas). La ventaja seden este caso es que podría hacerlo sin archivos temporales. es decir, en su lugar.

Respuesta1

Prueba este:

sed '1{/^$/d}' file

Respuesta2

Una alternativa:

sed '0,/^$/d' archivo

Y como una suposición audaz, es posible que desee eliminar todas las líneas en blanco antes de la primera línea (que contenga caracteres). Si es el caso, podemos intentar lo siguiente:

archivo sed '1,/^$/d'

información relacionada