Se você não quiser ficar confuso, mas continuar usando tail e head , há uma maneira útil de invocar tail usando uma contagem de linhas desde o início, não o final:
tail -n +4001 yourfile | head -4000
... Mas uma ferramenta melhor e automática feita apenas para dividir arquivos é chamada ... split ! É também uma parte do GNU coreutils, então qualquer sistema normal de Linux deveria tê-lo. Veja como você pode usá-lo:
split -l 4000 yourInputFile thePrefixForOutputFiles
(Veja man split em caso de dúvida.)