Você pode usar sed
sed -e :a -e '$q;N;1001,$D;ba' -i filename
-
-e
define um script (comando) -
:a
define um rótulo -
$q
define um endereço ($
final do arquivo) e ramificaçõesq
para ele -
N
acrescenta a próxima linha de entrada ao espaço padrão -
1001,$d
exclui toda a linha entre 1001 e o final do arquivo (por causa doN
anterior eles serão anexados ao espaço padrão) -
ba
ramifica para o rótulo definido no início
Por exemplo (últimas 3 linhas do arquivo)
$ cat alert_migtst.log
1
2
3
4
5
6
7
8
9
$ sed -e :a -e '$q;N;4,$D;ba' -i alert_migtst.log
$ cat alert_migtst.log
7
8
9