Удалить первую строку файла, если он пустой

Как я могу удалить первую (!) строку текстового файла, если она пуста, используя, например, sed или другие стандартные инструменты UNIX. Я попробовал эту команду:

sed '/^$/d' < somefile

Но это удалит первую пустую строку, а не первую строку файла, если он пуст. Могу ли я указать sed какое-то условие относительно номера строки?

С ответом Левона я создал этот небольшой скрипт на основе awk:

#!/bin/bash

for FILE in $(find some_directory -name "*.csv")
do
    echo Processing ${FILE}

    awk '{if (NR==1 && NF==0) next};1' < ${FILE} > ${FILE}.killfirstline
    mv ${FILE}.killfirstline ${FILE}

done
10
задан Arne 27 June 2012 в 13:44
поделиться