Использование awk:
awk -v c=40 'NR>c{exit} 1; END{for(i=NR+1;i<=c;i++)print""}'
-v c = 40
Это определяет количество строк, которое нам нужно.
NR> c {exit}
Если мы напечатали более c
строк, тогда выйдите.
1
Это загадочное сокращение awk для вывода строки.
END {for (i = NR + 1; i <= c; i ++) print ""}
Если мы достигли конца ввода, продолжайте печатать пустые строки, пока мы не прочитаем всего c
строк вывода.
Для иллюстрации сокращаем желаемый результат до пяти строк:
$ seq 2 | awk -v c=5 'NR>c{exit} 1; END{for(i=NR+1;i<=c;i++)print""}'
1
2
$ seq 10 | awk -v c=5 'NR>c{exit} 1; END{for(i=NR+1;i<=c;i++)print""}'
1
2
3
4
5