fácil com o comando awk
awk '{print > $1".txt"}' infile.txt
isso produzirá dois arquivos "a.txt" contendo as linhas cuja coluna um é apenas "a" e "b.txt" contendo aquelas linhas cuja coluna um é apenas "b" se a coluna 1 contiver apenas a ou b
acima é quando seus dados são delimitados por aba ou espaço , caso seja diferente deles poderíamos dizer ao awk com seu -F"DELIMITER"
, que DELIMITER representa seu delimitador de campos de arquivos.