Use o split command :
split -l 100 file
Por padrão, split cria arquivos de saída xaa , xab e assim por diante, mas você pode especificar o prefixo no final e obter sufixos puramente numéricos se desejar:
split -d -l 100 file PREFIX
Este comando fará com que os arquivos PREFIX01 , PREFIX02 e assim por diante. A -d opção é uma extensão GNU , por isso não é suportada em todos os sistemas. Nesse caso, ou alternativamente, você pode renomeá-los com um simples loop de shell após o fato - ele sempre gera nomes de arquivos que ordenam em ordem.