Я изучаю awk/gawk. В последнее время я просто пытаюсь решить любую проблему с ним, чтобы получить больше возможностей для практики.
Мой коллега вчера задал вопрос,
"как удалить первую и последнюю строку из файла"
. Я знаю, что sed '1d;$d' file
будет работать. также head/tail
работает даже при низкой производительности. Я сказал ему, что он был счастлив.
Позже я пытался написать однострочный awk: до сих пор я получил:
awk 'NR>1{a[++k]=$0}END{for(i=1;i<k;i++)print a[i]}'
Это сохранит весь массив в массиве, чтобы пропустить последнюю строку. Я чувствую, что должен быть более простой (или лучший) способ сделать это.
(если нет более простого или более быстрого или лучшего способа, я бы удалил вопрос)
спасибо.